laravel in action · buat template denganmengeksekusi perintahinidi command line laravelnew atau...
TRANSCRIPT
Persiapan
Sudah terinstall1. PHPversi 7.2/XAMPP/WAMP2. Mysql/Postgresql3. TextEditor(VisualStudioCode)
PEMBUKA BELAJAR
“Kami ridho Allah SWT sebagai Tuhanku, Islam sebagai agamaku, dan Nabi Muhammad sebagai Nabi dan Rasul, Ya Allah, tambahkanlah kepadaku ilmu dan berikanlah aku
kefahaman”
DOABELAJAR
LLARAVEL IN ACTION
Sadr Lufti Mufreni, S.Kom, M.Sc.2019
Bahan Kajian
OutlinesPendahuluanInstalasiOtentifikasiModelMigrasi DatabaseRouterControllerView
Pendahuluan
Laravel adalah webframeworkuntuk PHPFramework:kumpulan libraryyangdijadikan satuIdeawal dari RubyonRailsdengan konsep MVC(Model-View-Controller)
Pendahuluan
Frameworklainnya:1. CakePHP2. CodeIgniter:palingpopuler 2010
Mempunyai komunitas yangkuatKelemahan:adaptasi terhadap teknologi baru kurang,versi terakhir belummendukung PHP7
Pendahuluan
Laravel :opensource,mendukung PHP7Fitur1. Composer:mengelola dependecy2. EloquentORM:modelyangterhubung ke database,databaseindependent3. QueryBuilder4. Restfulcontroller:mendukung HTTPverb(POST,PUT,DELETE,GET)5. Bladetemplate:untuk halaman webyangdinamis6. ArtisanCLI:commandlineuntuk manipulasi projek
Instalasi
1.Sebelum menginstall Laravel,installdulu Composer
Instalasi
1.Sebelum menginstall Laravel,installdulu ComposerEksekusicomposerJangan lupa updatePATH
2.InstallLaravel dengan mengeksekusi perintah ini dicommandlinecomposerglobalrequirelaravel/installerJangan lupa updatePATH
3.Masuk ke direktori htdocs
Instalasi
4.Buat templatedengan mengeksekusi perintah ini dicommandlinelaravel new<nameprojek>ataularavel new<nameprojek>--auth--auth digunakan untuk membuat otentifikasi secara otomatis
5.Masuk ke direktori <nama projek>dan eksekusiphp artisanserve
6.Buka browserdan kunjungihttp://localhost/<nama projek>
Instalasi
Instalasi
7.Buka file.env dirootdirektori projek baru8.Ubah DB_CONNECTIONmenjadi pgsql untuk databasePostgresql dan portke 54329.Bila databasebelum ada silahkan dibuat databasenyaContoh dipostgresql,buka adminsqlcreatedatabaselaravelcreateusermyblog withencryptedpassword‘myblog’grantallprivilegesondatabaselaravel tomyblog ;10.Buka terminal/commandprompt,masuk ke direktori projek baru,eksekusi diterminal/commandprompphp artisanmigrate
Instalasi
Instalasi
Setelah berhasil membuat projek,Laravel membuat direktori berikut1. app :kode untuk controller/model2. boostrap :boostrap/cachedibuat writable3. config :berisi konfigurasi dari projek: app.php,database.php4. database :fileyangdiperlukan untuk migrasi5. public :menyimpan staticfile/images/javascript/css6. resources :kode untuk view7. routes :berisi routeprojek:web.php,api.php8. storage :writablepermission,compiledstuff9. tests :testingframeworkforPHPUnit10. vendor :composerdependencies
Otentifikasi
Untuk membuat otentifikasi Laravel menyediakan fitur otomatisnya.
Caranya:installpackagelaravel/ui dengan cara mengeksekusi diterminalcomposerrequirelaravel/ui --devphp artisanui bootstrap–auth
Ubah file.env APP_URLsesuai dengan nama webnya
Otentifikasi
Otentifikasi
Otentifikasi
Membutuhkan settingmailserver
Otentifikasi
Di.env,ubah mailsettings
Otentifikasi
Untuk membuat verifikasi email,ketika mendaftar
Caranya:1. Buka fileUser.php didirektori app2. Untuk menambahkan fitur verifkasi email,Userimplementasi
Illuminate\Contracts\Auth\MustVerifyEmail contract
Otentifikasi
3. Buka fileweb.php didirektori routes4. Tambahkan ['verify'=>true] diAuth::routes5. Tambahkan ->middleware(‘verified’)pada routeyangdiwajibkan useruntuk
verifikasi emailterlebih dahulu
Otentifikasi
Hasil RegisterdenganVerifikasi Email
Otentifikasi
Hasil Registerdengan Verifikasi Email
Otentifikasi
Otentifikasi
Otentifikasi
Otentifikasi
Model
Laravel menggunakan Eloquentsebagai ObjectRelationModel
Setiap Tabledidatabasemempunyai 1ModelclassdiPHPEloquentsecara defaultmenggunakanAutoincrementprimarykey(integer)
Model
Membuat classmodelsecara otomatis1.Menggunakan terminaleksekusi perintah ini didirektori projekphp artisanmake:model Post–mOtomatis membuat filePost.php berisi classdan migrationfile
Model
Model
Membuat classmodelsecara otomatis2.Menggunakan terminaleksekusi perintah ini didirektori projekphp artisanmake:model Comment–mOtomatis membuat fileComment.php berisi classdan migrationfile
Model
Model
MigrationLaravel memudahkan untuk mengupdate databaseEksekusi perintahphp artisanmigrate
Model
Relationship:1. OnetoOnemenggunakan hasOne (PosthasOne User)2. OnetoManymenggunakan hasMany (PosthasMany Comment)3. OnetoMany(Inverse)menggunakan belongsTo (CommenthasOne Post)4. ManytoManymenggunakan belongsToMany
PosthasMany Commentkarena post_id adanya ditablecomments
Model
Relationship:
Controller
Controller:yangmengatur antara Viewdan ModelUntuk mengakses controllerdari Viewmemerlukan Routing.RoutingmenggunakanHTTPVerbsDisimpan diweb.php atau api.php
Route::get($uri,$callback);Route::post($uri,$callback);Route::put($uri,$callback);Route::patch($uri,$callback);Route::delete($uri,$callback);Route::options($uri,$callback);
Controller
Untuk routingyangmemerlukan ijin akses menggunakan middleware.Middlewareadalah fungsi yangdigunakan sebelum mengeksekusi requestTugas middlewareyangterpenting adalah filteringrequest,contoh ijin akses.
Untuk mengedit routing,web.php dan api.php bisa digunakan.web.php untuk yangberhubungan dengan routinghalaman webapi.php untuk yangberhubungan dengan APIAjax
Controller
web.php
api.php
Controller
Untuk membuat controllerdilakukan dengan mengeksekusi perintah berikut:
php artisanmake:controller UserController
View
Menampilkan tampilan dibrowser.Menggunakan bladetemplate.Gabungan html,css,javascript,dan katakunci spesial.
Sebagai dasar kita menggunakan home.blade.php.Kitaakan menggunakan jquery dicdn,editfileresources/views/layouts/app.blade.php
View
View
View
AjaxUntuk mengaktifkan ajax,APIauthenticationharus diaktifkan.Diperlukanperubahan databaseuntuk tabel users.Eksekusi perintah
php artisanmake:migration enable_api_user_access
View
php artisanmigrate
View
Tambahkan kode berikut LoginController diapp\Http\Controllers\Auth\LoginController.php
MVC
UserController.phpdiubah menjadi
MVC
home.blade.appditambahkan javascript
MVC
PENUTUP BELAJARحیم الرحمن الر بسم ا.
ا وارزقنا اتـباعه وأرنا الباطل باطال وارزقنا اجتنابه Fاللھم أرنا الحق حق
Ya Allah Tunjukkanlah kepada kami kebenaran sehinggga kami dapatmengikutinya,
Dan tunjukkanlah kepada kami keburukan sehingga kami dapat menjauhinya.