Anda di halaman 1dari 9

Tugas Web Framework Laravel

Nama : Ferryawan Ardiansyah


NIM : 2110130004
matkul : Web Framework
implementasi mata kuliah
1. Model:
Model dalam Laravel digunakan untuk berinteraksi dengan database. Misalnya, mari
kita buat model untuk tabel "posts" yang akan menyimpan postingan di blog kita.

php artisan make:model Post

Setelah itu, Anda dapat mendefinisikan properti, hubungan, dan lainnya di dalam model
Post . Misalnya:

// app/Models/Post.php

namespace App\\Models;

use Illuminate\\Database\\Eloquent\\Model;

Tugas Web Framework Laravel 1


class Post extends Model
{
protected $table = 'posts';
protected $fillable = ['title', 'content'];

// Hubungan dengan model lain, jika ada


}

2. View:
View adalah bagian dari aplikasi yang menangani tampilan. Dalam Laravel, tampilan
menggunakan template Blade. Anda dapat membuat tampilan Blade di folder
resources/views .

Misalnya, mari buat tampilan untuk menampilkan postingan:

<!-- resources/views/posts/index.blade.php -->

@extends('layouts.app')

@section('content')
<h1>Daftar Postingan</h1>
@foreach ($posts as $post)
<h3>{{ $post->title }}</h3>
<p>{{ $post->content }}</p>
@endforeach
@endsection

3. Controller:
Controller dalam Laravel digunakan untuk mengelola logika bisnis dan menghubungkan
model dengan tampilan. Buatlah controller dengan perintah:

php artisan make:controller PostController

Kemudian, Anda dapat menambahkan logika di dalamnya:

// app/Http/Controllers/PostController.php

namespace App\\Http\\Controllers;

use Illuminate\\Http\\Request;
use App\\Models\\Post;

Tugas Web Framework Laravel 2


class PostController extends Controller
{
public function index()
{
$posts = Post::all();
return view('posts.index', compact('posts'));
}
}

4. Routing:
Selanjutnya, Anda perlu mendefinisikan rute dalam routes/web.php :

// routes/web.php

use Illuminate\\Support\\Facades\\Route;
use App\\Http\\Controllers\\PostController;

Route::get('/posts', [PostController::class, 'index']);

Ini akan mengarahkan permintaan ke metode index dalam PostController saat Anda
mengunjungi /posts .
5. Tampilan Umum:
Terakhir, pastikan Anda telah membuat tampilan dasar atau layout yang digunakan oleh
tampilan Anda. Ini biasanya disimpan dalam resources/views/layouts/app.blade.php .
Setelah Anda memiliki semua komponen ini, Anda dapat mengakses daftar postingan
dengan mengunjungi /posts pada aplikasi Anda.
Ini adalah dasar dari implementasi MVC dalam Laravel. Anda bisa memperluasnya
dengan menambahkan fitur-fitur seperti pembuatan, pengeditan, dan penghapusan
postingan serta validasi data.
Validasi Form:
Saat membuat atau mengedit postingan, Anda mungkin perlu melakukan validasi data
yang masuk. Anda bisa menggunakan Laravel's built-in validation. Misalnya, dalam
metode store di PostController , Anda dapat menambahkan validasi seperti ini:

public function store(Request $request)


{

Tugas Web Framework Laravel 3


$request->validate([
'title' => 'required|max:255',
'content' => 'required',
]);

Post::create([
'title' => $request->input('title'),
'content' => $request->input('content'),
]);

return redirect('/posts');
}

Membuat Postingan Baru:


Untuk membuat postingan baru, Anda dapat membuat tampilan formulir di mana
pengguna dapat memasukkan informasi postingan. Dalam tampilan
resources/views/posts/create.blade.php , Anda bisa membuat formulir dengan metode

POST:

<form method="POST" action="/posts">


@csrf
<label for="title">Judul</label>
<input type="text" name="title" id="title">
<label for="content">Konten</label>
<textarea name="content" id="content"></textarea>
<button type="submit">Kirim</button>
</form>

Anda kemudian harus menambahkan rute dan metode dalam controller untuk
menangani penambahan postingan baru.
Edit dan Hapus Postingan:
Untuk mengedit dan menghapus postingan, Anda perlu membuat tampilan yang sesuai,
metode dalam controller, dan rute yang sesuai. Misalnya, Anda bisa membuat tampilan
resources/views/posts/edit.blade.php dan menambahkan rute dan metode dalam

PostController untuk mengelola ini.

Membuat Middleware:
Middleware digunakan untuk mengecek permintaan sebelum mencapai metode dalam
controller. Anda dapat menggunakan middleware untuk autentikasi pengguna atau
otorisasi sebelum mengizinkan akses ke fitur tertentu.

Tugas Web Framework Laravel 4


Misalnya, Anda dapat menambahkan middleware autentikasi ke rute agar hanya
pengguna yang sudah login yang dapat mengakses halaman edit dan hapus postingan:

Route::middleware(['auth'])->group(function () {
Route::get('/posts/{post}/edit', [PostController::class, 'edit']);
Route::delete('/posts/{post}', [PostController::class, 'destroy']);
});

Pengguna dan Otorisasi:


Laravel menyediakan sistem otentikasi yang kuat dan Anda dapat menghubungkannya
dengan pengguna dan otorisasi. Anda dapat menggunakan php artisan make:auth untuk
menghasilkan dasar-dasar otentikasi dan tampilan pengguna.
Selain itu, Anda dapat menentukan kebijakan otorisasi yang menentukan siapa yang
boleh mengedit atau menghapus postingan. Misalnya:

public function update(Request $request, Post $post)


{
$this->authorize('update', $post);

// Logika pembaruan postingan


}

Serta mendefinisikan kebijakan otorisasi:

php artisan make:policy PostPolicy

Pagination:
Jika daftar postingan Anda tumbuh besar, Anda mungkin ingin menggunakan fitur
pagination untuk membatasi jumlah postingan yang ditampilkan dalam satu halaman.

$posts = Post::paginate(10);

1. Instalasi Laravel Mix:


Pastikan Anda telah menginstal Laravel Mix dengan menjalankan perintah berikut di
terminal Anda:

Tugas Web Framework Laravel 5


npm install

2. Konfigurasi Webpack Mix:


Setelah menginstal Mix, Anda perlu mengonfigurasi file webpack.mix.js . File ini berisi
konfigurasi untuk mengelola sumber daya frontend Anda. Misalnya:

const mix = require('laravel-mix');

mix.js('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css')
.sourceMaps();

Dalam contoh di atas, mix.js dan mix.sass digunakan untuk mengkompilasi file
JavaScript dan Sass Anda. Hasilnya akan disimpan di direktori public/js dan
public/css .

3. Menjalankan Mix:
Setelah Anda mengkonfigurasi Mix, jalankan perintah berikut untuk mengompilasi
sumber daya Anda:

npm run dev

Anda juga dapat menggunakan perintah npm run watch untuk mengawasi perubahan
dalam file sumber daya Anda dan mengompilasinya secara otomatis ketika terjadi
perubahan.
4. Menggunakan Hasil Kompilasi:
Setelah Anda menjalankan Mix, file hasil kompilasi akan tersedia di direktori public/js
dan public/css . Anda dapat menghubungkan file ini dalam tampilan Blade Anda dengan
menggunakan fungsi mix() seperti ini:

<link rel="stylesheet" href="{{ mix('css/app.css') }}">


<script src="{{ mix('js/app.js') }}"></script>

Tugas Web Framework Laravel 6


Ini akan memungkinkan Anda untuk menggunakan file CSS dan JavaScript yang sudah
dikompilasi dalam aplikasi web Anda.

Project

Langkah 1: Membuat Proyek Laravel


Buat proyek Laravel dengan menjalankan perintah berikut di terminal:

composer create-project --prefer-dist laravel/laravel nama-proyek

Langkah 2: Pindah ke Direktori Proyek


Pindah ke direktori proyek yang baru saja dibuat:

cd nama-proyek

Langkah 3: Menginstal Laravel Mix


Pastikan Anda memiliki Node.js dan NPM terinstal di sistem Anda. Jika belum, instalasi
Node.js dan NPM dari situs web resmi Node.js.
Kemudian, instal Laravel Mix dengan menjalankan perintah berikut:

npm install

Langkah 4: Konfigurasi Laravel Mix


Buka file webpack.mix.js dan konfigurasikan pengelolaan sumber daya frontend sesuai
dengan kebutuhan proyek Anda. Di sini, kita akan menambahkan contoh konfigurasi
untuk mengelola file Sass dan JavaScript:

const mix = require('laravel-mix');

mix.js('resources/js/app.js', 'public/js')

Tugas Web Framework Laravel 7


.sass('resources/sass/app.scss', 'public/css')
.sourceMaps();

Langkah 5: Migrate Database (Opsional)


Jika Anda berencana untuk menggunakan database, jalankan perintah migrasi untuk
membuat tabel-tabel yang diperlukan:

php artisan migrate

Langkah 6: Menjalankan Mix dan Server


Jalankan Mix untuk mengompilasi sumber daya frontend:

npm run dev

Untuk memulai server pengembangan, jalankan:

php artisan serve

Proyek Laravel Anda sekarang sudah berjalan. Anda dapat mengaksesnya di


http://localhost:8000.

Validasi Form (Opsional)


Jika proyek Anda melibatkan formulir, Anda dapat menggunakan Laravel untuk
melakukan validasi data yang dikirimkan melalui formulir. Contoh implementasi validasi
formulir ada pada pembahasan sebelumnya.

// Misalnya, dalam metode store untuk postingan


public function store(Request $request)
{
$request->validate([
'title' => 'required|max:255',
'content' => 'required',
]);

Tugas Web Framework Laravel 8


// Logika penyimpanan postingan
}

Middleware (Opsional)
Laravel menyediakan middleware untuk mengecek permintaan sebelum mencapai
metode dalam controller. Anda dapat menggunakan middleware untuk mengamankan
rute atau mengaplikasikan filter tertentu.

Route::middleware(['auth'])->group(function () {
// Rute yang memerlukan autentikasi
});

Pagination (Opsional)

$posts = Post::paginate(10);

Tugas Web Framework Laravel 9

Anda mungkin juga menyukai