Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introduction to Laravel framework (1) (@Malang ...
Search
DOT Indonesia
January 26, 2018
0
110
Introduction to Laravel framework (1) (@Malang PHP User Group Meetup - October 2017)
DOT Indonesia
January 26, 2018
Tweet
Share
More Decks by DOT Indonesia
See All by DOT Indonesia
Agile Testing To Support Short Cycle Development (@DOT TechTalk, 18 Januari 2019)
dotindonesia
0
110
How to be Agile (@DOT TechTalk, 11 Januari 2019)
dotindonesia
1
44
Build an Awesome CI/CD with Jenkins - Samsul (@PHP User Group Meetup, 17 September 2018)
dotindonesia
0
130
Mockup API to IMPROVE Team Collaboration - Toni (@DOT TechTalk, 10 Agustus 2018)
dotindonesia
0
73
Investment & Financing - Arya (@DOT TechTalk, 20 April 2018)
dotindonesia
3
68
Introduction to Docker Container - Samsul Ma'arif (@DILO Malang - 12 March 2018)
dotindonesia
0
170
Company Overview - DOT Indonesia (@Study Excursie UNIDA Gontor - March 2018)
dotindonesia
0
120
How to be a Great Mobile Developer - Agus (@Study Excursie UNIDA Gontor - March 2018)
dotindonesia
0
55
Rapid mobile development with React Native - Fahmi (@Study Excursie UNIDA Gontor - March 2018)
dotindonesia
0
44
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Balancing Empowerment & Direction
lara
1
400
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
810
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Faster Mobile Websites
deanohume
307
31k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Why Our Code Smells
bkeepers
PRO
337
57k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
For a Future-Friendly Web
brad_frost
179
9.8k
Transcript
Introduction to Laravel framework “Love beautiful code? We do too.”
At Malang PHP User Group Meetup - October 2017
About Speaker Ahmad Fatoni [
[email protected]
] Web Developer at DOT Indonesia
(PT Distinction On Technology Indonesia)
Laravel (2011 ) V5.5 (2017 ) Taylor Otwell Laravel Horizon
| Laravel Dusk | Laravel Echo | Valet | Lumen | and more….
Today Topic Architecture Routing Controller Model Views Migration Query Builder
Eloquent Composer support
Architecture
Architecture
Routing Default route files : routes/web.php and routes/api.php Available method
: GET, POST, PUT, PATCH, DELETE, OPTIONS CSRF protection Using parameter(s) : Route::get('users/{id}', ['uses' => 'UserController@show]); Named route : Route::get('users/{id}', ['uses' =>UserController@show])->name(‘show’); Grouping
Controller Default folder : app/Http/Controllers Connecting model and view (see
the architecture) ‘Request’ handler : Illuminate\Http\Request ◦ all() ◦ only() ◦ except() ◦ json() ◦ And more (https://laravel.com/api/5.5/Illuminate/Http/Request.html)
Controller
Controller Return view response : return view('auth.login'); Compacting data to
view $data['member'] = [ 'fatoni', 'kennan' ]; return view('member.index', compact('data')); Redirect to route : return redirect()->route('member.index');
Model Default folder : app Connecting app with database Awesome
Eloquent
Model
Views Default folder : resources/views Blade templating (https://laravel.com/docs/5.5/blade)
Views Easy to organizing
Views Easy to organizing
Migrations Default folder : database/migrations Build database from application Easily
modify and share database schema Creating foreign key (relationship)
Migrations CreateRolesTable CreatePermissionRoleTable
Migrations
Query Builder Get Data Query Builder : ◦ $users =
DB::table('users')->get(); SQL Query ◦ $sql = "SELECT * FROM users”; Insert Data Query Builder : ◦ $result = DB::table('users')->insert([‘colum1’ => ‘values1’, ‘column2’ => ‘values2’]); ◦ $result = DB::table(users’)->insert($request->all()); SQL Query ◦ INSERT INTO users (column1, column2.) VALUES (value1, value2)
Query Builder Update Data Query Builder : ◦ $result =
DB::table('users')->where(‘id’, ‘=’, 1)->update([‘colum1’ => ‘values1’, ‘column2’ => ‘values2’]); ◦ $result = DB::table(users’)->where(‘id’, ‘=’, 1)->insert($request->all()); SQL Query ◦ UPDATE users SET column1=value, column2=value2 WHERE id=1
Eloquent Awesome collections ( all(), create(), update(), etc ) Accessors
& Mutators Easy managing and working with relationships Serializations
Eloquent Awesome collections ( all(), create(), update(), etc )
Eloquent Accessors & Mutators Accessor Mutator
Eloquent Easy managing and working with relationships ◦ One To
One ◦ One To Many ◦ Many To Many ◦ Has Many Through ◦ Polymorphic Relations ◦ Many To Many Polymorphic Relations
Eloquent Easy managing and working with relationships ◦ One To
One Call it : $phone = User::find(1)->phone;
Eloquent Serializations ◦ Serializing To Arrays ◦ Serializing To JSON
Composer support
None