Laravel In Action · Buat template denganmengeksekusi perintahinidi command line laravelnew atau...

Preview:

Citation preview

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.

Recommended