Dalam tutorial ini saya akan membahas tentang cara membuat crud dengan laravel 9 untuk pemula. Jadi silahkan ikuti langkah-langkah yang sudah saya sediakan dibawah untuk membuat crud pada laravel 9.
Laravel 9 memberikan beberapa fitur baru dan dukungan LTS. Jika anda baru mengenal laravel maka tutorial ini akan sangat membantu anda untuk membuat aplikasi create, read, update, & delete.
- Install Laravel : Kita harus install aplikasi laravel versi 9 menggunakan perintah dibawah ini, silahkan buka CMD ( Command Prompt ) atau terminal dan jalankan perintah dibawah ini.
composer create-project --prefer-dist laravel/laravel laravelcrud
laravelcrud merupakan nama untuk aplikasi yang akan kita install
- Konfigurasi Dasabase : Pada langkah ini kita akan konfigurasi database seperti nama database, username, password, dll. Jadi silahkan buka file .env dan isi semua detail seperti contoh dibawah ini.
DB_CONNECTION = mysql DB_HOST = 127.0.0.1 DB_PORT = 3306 DB_DATABASE = isi dengan nama databse kalian contoh ( laravelcrud ) DB_USERNAME = isi dengan username database kalian contoh ( laravelcrud ) DB_PASSWORD = isi dengan password database kalian contoh ( root ) Jika ada
- Create Migration : Disini kita akan membuat table menggunakan migration dari laravel dengan perintah seperti dibawah ini :
php artisan make:migration create_products_table --create=products
Setelah jalankan perintah diatas, maka anda akan menemukan file pada folder "database\migrations\" isi seperti kode dibawah ini untuk membuat table products.
<?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; class CreateProductsTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('products', function (Blueprint $table) { $table->id(); $table->string('name'); $table->text('detail'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('products'); } }
Sekarang kita jalankan perintah migrate untuk menambahkan table ke database.
php artisan migrate
- Add Controller & Model : Pada langkah ini kita akan membuat Controller & Model. Untuk Controller dengan nama ProductController dan Model dengan nama Product. Jalankan perintah dibawah ini untuk membuat Controller & Model.
php artisan make:controller ProductController --resource --model=Product
Setelah perintah diatas di jalankan, maka kita akan mendapatkan file baru yang terdapat di "app\Http\Controller\ProductController.php". Pada controller ini kita akan mendapatkan tujuh metode secara default, yaitu : index, create, store, view, edit, update, & destroy.
<?php namespace App\Http\Controllers; use App\Models\Product; use Illuminate\Http\Request; class ProductController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { // } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { // } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { // } /** * Display the specified resource. * * @param \App\Models\Product $product * @return \Illuminate\Http\Response */ public function show(Product $product) { // } /** * Show the form for editing the specified resource. * * @param \App\Models\Product $product * @return \Illuminate\Http\Response */ public function edit(Product $product) { // } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param \App\Models\Product $product * @return \Illuminate\Http\Response */ public function update(Request $request, Product $product) { // } /** * Remove the specified resource from storage. * * @param \App\Models\Product $product * @return \Illuminate\Http\Response */ public function destroy(Product $product) { // } }
Untuk Model kita dapat menemukannya pada "app\Models\Product.php"
<?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class Product extends Model { use HasFactory; }
- Add Resource Route : Disini kita akan menambahkan Resource Route untuk aplikasi kita, jadi silahkan buka file "routes\web.php" dan tambahkan route seperti dibawah ini :
<?php use App\Http\Controllers\ProductController; use Illuminate\Support\Facades\Route; /* |-------------------------------------------------------------------------- | Web Routes |-------------------------------------------------------------------------- | | Here is where you can register web routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | contains the "web" middleware group. Now create something great! | */ Route::get('/', function () { return view('welcome'); }); // Product Route::resource('product', ProductController::class);
Social Media