Introduction to Laravel
By: Yogi Salomo Mangontang Pratama
& M. Harits S. Adil Haqqi Elfahmi
Outline Presentasi
• Tentang Laravel
• How to get started
• Komponen-Komponen Laravel
Tentang Laravel
• Apa itu Laravel?
• Arsitektur
Apa itu Laravel?
“Framework gratis dan open source untuk pengembangan
aplikasi berbasis web dan dirancang untuk pola
penge...
Arsitektur
How to get started
• System Requirements
• Composer
• Instalasi Laravel
System Requirements
• PHP >= 5.4
• MCrypt PHP Extension
Download it Here :
Composer
• Dependency Manager untuk bahasa pemrograman PHP.
• Cara Mendapatkan:
• Ketik perintah berikut pada terminal:
• ...
Instalasi Laravel
• Clone dari Github Laravel
• Download dari website Laravel
• Laravel Installer
• Menggunakan Composer
c...
Komponen–Komponen Laravel
• Route
• Controller
• Eloquent ORM
• View
Routes
• <Nama Domain> / app / routes.php
• Memetakan URL kepada fungsi-fungsi pada Controller
• Pada URL dapat ditambahka...
Macam-macam Route
• Basic GET
• Basic POST
• Any
Route::get(‘<URL>’, ‘<Fungsi>’);
Route::post(‘<URL>’, ‘<Fungsi>’);
Route:...
Macam-macam Route
• RESTful Controller
• URL dipetakan kepada Controller tertentu. Fungsi yang
dipanggil sesuai dengan bag...
Macam-macam Route
• Resource Controller
• Mempermudah pengelolaan Resource. Contoh: Foto,
Session, dsb.
Route::resource(‘<...
Filter
• Membantu membatasi akses kepada suatu route tertentu
• Cara mendefinisikan:
• Ini
• Pada file filter.php
• Cara m...
Filter
Controller
• <Nama Domain> / app / controllers
• Fungsi-fungsi yang berinteraksi dengan model dan mengembalikan
berbagai n...
Controller
• Nilai yang dikembalikan oleh Controller:
• Datatype ( boolean, integer, dll)
• View
• withInput : dengan nila...
Controller
Validator
• Berfungsi untuk membantu melakukan validasi terhadap input yang
diberikan pada form
• Rules didefinisikan deng...
Eloquent ORM
• <Nama Domain> / app / models
• Merepresentasikan Tabel sebagai sebuah objek pada aplikasi
• Atribut:
• tabl...
Eloquent ORM
• Beberapa Query pada Model:
• Model::all();
• Model::find(1);
• Model::where(‘<Atribut>', ‘<Operator>',
‘<Ni...
Eloquent ORM
• Mendukung Relationship Mapping antar tabel pada database:
• One To One
• Many To Many
• One To Many
• publi...
Eloquent ORM
• Mendukung Soft Delete, yaitu tidak langsung menghapus data pada
database melainkan memberikan Timestamp pad...
View – Blade Engine
• <Nama Domain> / app / views
• File pada view disimpan dengan format: <Nama File>.blade.php
• Merepre...
View – Blade Engine
• Beberapa fungsi yang terdapat pada Blade Engine:
• @extends : memanggil/meng-inherit file view lainn...
View – Blade Engine
• Selain itu untuk memanggil fungsi echo dari php dapat dilakukan
dengan menggunakan {{<Nilai yang Ing...
Thanks
Upcoming SlideShare
Loading in …5
×

Introduction to Laravel

1,183 views

Published on

File Presentasi sebagai tahap awal untuk pembelajaran pengembangan aplikasi berbasis Web dengan menggunakan framework Laravel untuk Bahasa PHP

  • Be the first to comment

  • Be the first to like this

Introduction to Laravel

  1. 1. Introduction to Laravel By: Yogi Salomo Mangontang Pratama & M. Harits S. Adil Haqqi Elfahmi
  2. 2. Outline Presentasi • Tentang Laravel • How to get started • Komponen-Komponen Laravel
  3. 3. Tentang Laravel • Apa itu Laravel? • Arsitektur
  4. 4. Apa itu Laravel? “Framework gratis dan open source untuk pengembangan aplikasi berbasis web dan dirancang untuk pola pengembangan MVC ( Model, View, Controller )” Taylor Otwell MIT License Github
  5. 5. Arsitektur
  6. 6. How to get started • System Requirements • Composer • Instalasi Laravel
  7. 7. System Requirements • PHP >= 5.4 • MCrypt PHP Extension Download it Here :
  8. 8. Composer • Dependency Manager untuk bahasa pemrograman PHP. • Cara Mendapatkan: • Ketik perintah berikut pada terminal: • Atau download installer-nya ( khusus Windows ) pada: php -r "readfile('https://getcomposer.org/installer');" | php
  9. 9. Instalasi Laravel • Clone dari Github Laravel • Download dari website Laravel • Laravel Installer • Menggunakan Composer composer create-project laravel/laravel --prefer-dist
  10. 10. Komponen–Komponen Laravel • Route • Controller • Eloquent ORM • View
  11. 11. Routes • <Nama Domain> / app / routes.php • Memetakan URL kepada fungsi-fungsi pada Controller • Pada URL dapat ditambahkan parameter untuk dikirimkan kepada fungsi. • <Fungsi> dapat diisi dengan fungsi dari Controller maupun fungsi anonymus yang langsung diimplementasikan pada route Route::<Metode Route>(‘<URL>’, ‘<Fungsi>’); Route::get(‘url/{var?}’, function($var = default);
  12. 12. Macam-macam Route • Basic GET • Basic POST • Any Route::get(‘<URL>’, ‘<Fungsi>’); Route::post(‘<URL>’, ‘<Fungsi>’); Route::any(‘<URL>’, ‘<Fungsi>’);
  13. 13. Macam-macam Route • RESTful Controller • URL dipetakan kepada Controller tertentu. Fungsi yang dipanggil sesuai dengan bagian akhir dari URL • Contoh URL: ‘user/view’ maka fungsi yang dipanggil pada controller getView / postView. Route::controller(‘<URL>’, ‘<Nama Controller>’); public function getView { } public function postView { } public function putView { }
  14. 14. Macam-macam Route • Resource Controller • Mempermudah pengelolaan Resource. Contoh: Foto, Session, dsb. Route::resource(‘<URL>’, ‘<Nama Controller>’);
  15. 15. Filter • Membantu membatasi akses kepada suatu route tertentu • Cara mendefinisikan: • Ini • Pada file filter.php • Cara mengimplementasikan: Route::filter(‘<nama>’, <Fungsi>); Route::get(‘<URL>', array('before' => ‘<Nama Filter>', <Fungsi>));
  16. 16. Filter
  17. 17. Controller • <Nama Domain> / app / controllers • Fungsi-fungsi yang berinteraksi dengan model dan mengembalikan berbagai nilai kepada client. • Jenis-jenis: • Basic • RESTful • Resource class <Nama Controller> extends BaseController{ }
  18. 18. Controller • Nilai yang dikembalikan oleh Controller: • Datatype ( boolean, integer, dll) • View • withInput : dengan nilai input dari Form • withError : dengan pesan Error dari validator • with : dengan model yang di-binding ke variabel • Redirect • JSON
  19. 19. Controller
  20. 20. Validator • Berfungsi untuk membantu melakukan validasi terhadap input yang diberikan pada form • Rules didefinisikan dengan cara disimpan dalam sebuah Array dengan format: • Daftar Rules dapat diperiksa di website Laravel • Messages berisi pesan Error yang ingin dibuat khusus, didefinisikan dengan cara disimpan pada sebuah Array dengan format: $<Nama Variabel> = Validator::make( <Input>, <Rules>, <Messages>); ‘<Nama Field>’=> ‘<Rules1>|<Rules2>|…’ ‘<Nama Rule>’=> ‘<Isi Pesan>’
  21. 21. Eloquent ORM • <Nama Domain> / app / models • Merepresentasikan Tabel sebagai sebuah objek pada aplikasi • Atribut: • table : Mendefinisikan nama tabel yang digunakan • guarded : kolom pada tabel yang tidak boleh di-mass assignment • fillable : Mendefinisikan kolom yang boleh di-mass assignment class <Nama Model> extends Eloquent { }
  22. 22. Eloquent ORM • Beberapa Query pada Model: • Model::all(); • Model::find(1); • Model::where(‘<Atribut>', ‘<Operator>', ‘<Nilai>'); • Untuk melakukan penyimpanan ke database, dilakukan pemanggilan fungsi save() oleh Model.
  23. 23. Eloquent ORM • Mendukung Relationship Mapping antar tabel pada database: • One To One • Many To Many • One To Many • public function author() { return $this->belongsTo('Author','author_id'); }
  24. 24. Eloquent ORM • Mendukung Soft Delete, yaitu tidak langsung menghapus data pada database melainkan memberikan Timestamp pada atribut deleted_at. Beberapa fungsinya antara lain: • withTrashed() : Memasukkan yang sudah di delete • onlyTrashed() : Hanya yang sudah di delete • restore() : Mengembalikan yang sudah di delete
  25. 25. View – Blade Engine • <Nama Domain> / app / views • File pada view disimpan dengan format: <Nama File>.blade.php • Merepresentasikan tampilan yang akan diberikan pada user. • Blade: Engine untuk melakukan templating pada Laravel
  26. 26. View – Blade Engine • Beberapa fungsi yang terdapat pada Blade Engine: • @extends : memanggil/meng-inherit file view lainnya • @section : Mengisi suatu section pada view yang di-inherit • @endsection : Mengakhiri pengisian suatu section • Control Structures: • @if, @else, @elseif & @endif • @for & @endfor • @while & @endwhile • @foreach & @endforeach
  27. 27. View – Blade Engine • Selain itu untuk memanggil fungsi echo dari php dapat dilakukan dengan menggunakan {{<Nilai yang Ingin Ditampilkan>}}
  28. 28. Thanks

×