LARAVEL CRUD #1 - Membuat CRUD dengan Laravel 8

LARAVEL CRUD #1 - Membuat CRUD dengan Laravel 8

 

Dalam tutorial ini saya akan membahas tentang cara membuat crud dengan laravel 8 untuk pemula. Jadi silahkan ikuti langkah-langkah yang sudah saya sediakan dibawah untuk membuat crud pada laravel 8.


Laravel 8 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.


  1. Install Laravel : Kita harus install aplikasi laravel versi 8 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


  2. 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

  3. 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

  4. 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;
    }
    

  5. 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);
    

Nah untuk aplikasi crud laravel kita sudah hampir jadi, kita akan lanjutkan pada part berikut yaitu untuk menambahkan data ke database.

Load comments