Praktikum Pemrograman Web
Memahami konsep dasar pengembangan aplikasi web berbasis framework Laravel dengan menerapkan pola MVC (Model View Controller), Melatih kemampuan mahasiswa dalam mengelola database, routing, model, controller, dan view pada framework Laravel, dan Mengimplementasikan seluruh materi praktikum dalam bentuk aplikasi CRUD (Create, Read, Update, Delete) sederhana.
Persiapan Sistem:
Teori dan Langkah-Langkah:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=praktikum-laravel
DB_USERNAME=root
DB_PASSWORD=
php artisan make:migration create_products_tablephp artisan migrate, maka tabel products akan terbuat otomatis.
php artisan migrate:rollback untuk membatalkan proses migration, dan
php artisan migrate:fresh untuk memulai ulang semua proses migration.
php artisan make:seeder ProductSeeder
DB::table('products')->insert([
[
'name' => 'Laptop',
'price' => 7000000,
'description' => 'Laptop untuk pemrograman',
'created_at' => now(),
'updated_at' => now()
],
[
'name' => 'Mouse',
'price' => 150000,
'description' => 'Mouse wireless',
'created_at' => now(),
'updated_at' => now()
]
]);
$this->call(ProductSeeder::class);php artisan db:seed atau php artisan migrate:fresh --seed untuk menjalankan
seeding bersamaan dengan migration.
Route::get('/produk/{$id}', function ($id) {
return 'Produk ID: ' . $id;
}); php artisan make:controller ProductControllerRoute::get('/products', [ProductController::class, 'index']);
pada file web.php
$products = [
'Laptop',
'Mouse',
'Keyboard'
];
return view ('products', compact('products'));
$products = Product::all();
return view ('products', compact('products'));
<h1>Daftar Produk</h1>
Route::get('/products', function () {
return view('products');
});
<ul>
@foreach ($products as $product)
<li>{{ $product }}</li>
@endforeach
</ul>
<h1>Aplikasi Laravel</h1>
@yield('content')
@extends('layouts.app')
@section('title', 'Products')
@section('content')
<h1>Daftar Produk</h1>
<ul>
@foreach ($products as $product)
<li>{{ $product->name }}</li>
@endforeach
</ul>
@endsection
Tugas Praktikum:
Buatkan migration, seeding, model, route, controller, view untuk CRUD data mahasiswa.
php artisan make:model Mahasiswa -mcs
php artisan make:controller MahasiswaController --resource
$table->id();
$table->string('nama');
$table->string('nim')->unique();
$table->string('jurusan');
$table->timestamps(); php artisan migrate untuk memulai proses migration.
DB::table('mahasiswas')->insert([
[
'nama' => 'Teguh Esa Maulanna',
'nim' => '2411532005',
'jurusan' => 'Informatika',
'created_at' => now(),
'updated_at' => now(),
],
]);
this->call(MahasiswaSeeder::class); untuk
memanggil seeder mahasiswa.php artisan migrate:fresh --seed.
protected $fillable = [
'nama',
'nim',
'jurusan',
];
use App\Http\Controllers\MahasiswaController;
Route::resource('mahasiswas', MahasiswaController::class);
$mahasiswas = Mahasiswa::all();
return view('mahasiswas.index', compact('mahasiswas')); return view('mahasiswas.create');
Mahasiswa::create($request->all());
return redirect()->route('mahasiswas.index'); return view('mahasiswas.edit', compact('mahasiswa'));
$mahasiswa->update($request->all());
return redirect()->route('mahasiswas.index');
$mahasiswa->delete();
return redirect()->route('mahasiswas.index');
<h1>Data Mahasiswa</h1>
@yield('content')
php artisan serve, dan akses URL
http://127.0.0.1:8000/mahasiswas
Dari praktikum ini kita telah mempelajari bahwa, dengan framework laravel dapat mempermudah proses pengembangan aplikasi web dengan menerapkan konep MVC. Kita telah mempelajari cara konfigurasi database, pembuatan migration, seeding, routing, model, controller, dan view menggunakan Blade Template. Kita juga telah mengimplementasikan CRUD dalam aplikasi sederhana untuk mengelola data yang ada.
Repository project ini dapat diakses melalui link berikut:
https://github.com/teguhsmlnna666/WebPortofolio