100% menganggap dokumen ini bermanfaat (1 suara)
238 tayangan9 halaman

Contoh Tutorial CRUD Laravel 8 Untuk Pemula

Tutorial ini mengajarkan cara membuat aplikasi CRUD (create, read, update, delete) dasar menggunakan Laravel 8. Langkah-langkahnya meliputi instalasi Laravel 8, konfigurasi database, membuat migrasi tabel produk, menambahkan route, membuat controller dan model, serta membangun tampilan menggunakan Blade. Tutorial ini memberikan dasar untuk membangun aplikasi CRUD sederhana di Laravel.

Diunggah oleh

ujangras
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
100% menganggap dokumen ini bermanfaat (1 suara)
238 tayangan9 halaman

Contoh Tutorial CRUD Laravel 8 Untuk Pemula

Tutorial ini mengajarkan cara membuat aplikasi CRUD (create, read, update, delete) dasar menggunakan Laravel 8. Langkah-langkahnya meliputi instalasi Laravel 8, konfigurasi database, membuat migrasi tabel produk, menambahkan route, membuat controller dan model, serta membangun tampilan menggunakan Blade. Tutorial ini memberikan dasar untuk membangun aplikasi CRUD sederhana di Laravel.

Diunggah oleh

ujangras
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 9

Contoh Tutorial CRUD Laravel 8 untuk

Pemula
If Man 15 Sep 2020 1,889
Dalam tutorial ini, saya ingin menunjukkan membuat contoh  crud laravel 8. kami akan
menerapkan aplikasi crud laravel 8 untuk pemula. saya akan memberikan contoh sederhana
bagaimana membuat crud di laravel 8. Anda akan belajar membuat crud di laravel 8.
Nah, mari kita ikuti beberapa langkah untuk membuat contoh tutorial aplikasi laravel 8 crud.
Laravel 8 baru saja dirilis kemarin, Laravel 8 memberikan beberapa fitur baru dan dukungan
LTS. Jadi jika Anda baru mengenal laravel maka tutorial ini akan membantu Anda membuat
aplikasi insert update delete di laravel 8.
Anda hanya perlu mengikuti beberapa langkah dan Anda akan mendapatkan dasar
menggunakan controller, model, route, bootstrap 4 dan blade ..
Dalam tutorial ini, Anda akan mempelajari operasi crud yang sangat mendasar dengan laravel
versi baru 6. Saya akan menunjukkan langkah demi langkah dari awal jadi, saya akan lebih
memahami jika Anda baru di laravel.

Langkah 1: Instal Laravel 8


pertama-tama kita perlu mendapatkan aplikasi Laravel 8 versi baru menggunakan perintah di
bawah ini, Jadi buka terminal OR command prompt Anda dan jalankan perintah di bawah ini:
composer create-project --prefer-dist laravel/laravel blog

Langkah 2: Konfigurasi Database


Langkah kedua, kita akan membuat konfigurasi database misalnya nama database, username,
password dll untuk aplikasi laravel 8. Jadi mari kita buka file .env dan isi semua detail seperti
di bawah ini:
.env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=here your database name(blog)
DB_USERNAME=here database username(root)
DB_PASSWORD=here database password(root)

Langkah 3: Buat Migrasi


kami akan membuat aplikasi mentah untuk produk. jadi kita harus membuat migrasi untuk
tabel "products" menggunakan perintah artisan Laravel 8 php, jadi jalankan perintah di bawah
ini:
php artisan make:migration create_products_table --create=products
Setelah perintah ini, Anda akan menemukan satu file di jalur berikut "database/migrations"
dan Anda harus meletakkan kode di bawah ini di file migrasi untuk membuat tabel produk.
<?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 Anda harus menjalankan migrasi ini dengan mengikuti perintah:
php artisan migrate

Langkah 4: Tambahkan Resouce Route


Disini kita perlu menambahkan resource route untuk aplikasi product crud. jadi buka file
"routes/web.php" Anda dan tambahkan rute berikut.
route/web.php
use App\Http\Controllers\ProductController;
Route::resource('products', ProductController::class);
Langkah 5: Buat Controller dan Model
Pada langkah ini, sekarang kita harus membuat controller baru sebagai ProductController.
Jadi jalankan perintah di bawah dan buat controller baru. di bawah controller untuk membuat
resouce controller.
php artisan make:controller ProductController --resource --model=Product
Setelah perintah di bawah ini Anda akan menemukan file baru di jalur ini
"app/Http/Controllers/ProductController.php".
Jadi, mari kita salin kode di bawah ini dan letakkan di file ProductController.php.
app/Http/Controllers/ProductController.php
<?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()
    {
        $products = Product::latest()->paginate(5);
    
        return view('products.index',compact('products'))
            ->with('i', (request()->input('page', 1) - 1) * 5);
    }
     
    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
        return view('products.create');
    }
    
    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
        $request->validate([
            'name' => 'required',
            'detail' => 'required',
        ]);
    
        Product::create($request->all());
     
        return redirect()->route('products.index')
                        ->with('success','Product created successfully.');
    }
     
    /**
     * Display the specified resource.
     *
     * @param  \App\Product  $product
     * @return \Illuminate\Http\Response
     */
    public function show(Product $product)
    {
        return view('products.show',compact('product'));
    } 
     
    /**
     * Show the form for editing the specified resource.
     *
     * @param  \App\Product  $product
     * @return \Illuminate\Http\Response
     */
    public function edit(Product $product)
    {
        return view('products.edit',compact('product'));
    }
    
    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \App\Product  $product
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, Product $product)
    {
        $request->validate([
            'name' => 'required',
            'detail' => 'required',
        ]);
    
        $product->update($request->all());
    
        return redirect()->route('products.index')
                        ->with('success','Product updated successfully');
    }
    
    /**
     * Remove the specified resource from storage.
     *
     * @param  \App\Product  $product
     * @return \Illuminate\Http\Response
     */
    public function destroy(Product $product)
    {
        $product->delete();
    
        return redirect()->route('products.index')
                        ->with('success','Product deleted successfully');
    }
}
Ok, jadi setelah menjalankan perintah di bawah Anda akan menemukan
"app/Models/Product.php" dan meletakkan konten di bawah ini di file Product.php:
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;
  
    protected $fillable = [
        'name', 'detail'
    ];
}

Langkah 6: Buat File Blade


Di langkah terakhir. Pada langkah ini kita harus membuat file blade saja. Jadi terutama kita
harus membuat file layout dan kemudian membuat folder "products" baru kemudian
membuat file blade dari aplikasi mentah. Jadi akhirnya Anda harus membuat file pisau di
bawah ini:
1) layout.blade.php
2) index.blade.php
3) create.blade.php
4) edit.blade.php
5) show.blade.php
Jadi mari kita buat file berikut dan letakkan kode di bawah ini.
resource/views/products/layout.blade.php
<!DOCTYPE html>
<html>
<head>
    <title>Laravel 8 CRUD Application - Medikre.com</title>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-
bootstrap/4.0.0-alpha/css/bootstrap.css" rel="stylesheet">
</head>
<body>
  
<div class="container">
    @yield('content')
</div>
   
</body>
</html>
resources/views/products/index.blade.php
@extends('products.layout')
 
@section('content')
    <div class="row">
        <div class="col-lg-12 margin-tb">
            <div class="pull-left">
              <h2>Laravel 8 CRUD Example from scratch - Medikre.com</h2>
            </div>
            <div class="pull-right">
                <a class="btn btn-success"
href="{{ route('products.create') }}"> Create New Product</a>
            </div>
        </div>
    </div>
   
    @if ($message = Session::get('success'))
        <div class="alert alert-success">
            <p>{{ $message }}</p>
        </div>
    @endif
   
    <table class="table table-bordered">
        <tr>
            <th>No</th>
            <th>Name</th>
            <th>Details</th>
            <th width="280px">Action</th>
        </tr>
        @foreach ($products as $product)
        <tr>
            <td>{{ ++$i }}</td>
            <td>{{ $product->name }}</td>
            <td>{{ $product->detail }}</td>
            <td>
                <form action="{{ route('products.destroy',$product->id) }}"
method="POST">
   
                    <a class="btn btn-info" href="{{ route('products.show',
$product->id) }}">Show</a>
    
                    <a class="btn btn-primary"
href="{{ route('products.edit',$product->id) }}">Edit</a>
   
                    @csrf
                    @method('DELETE')
      
                    <button type="submit" class="btn btn-
danger">Delete</button>
                </form>
            </td>
        </tr>
        @endforeach
    </table>
  
    {!! $products->links() !!}
      
@endsection
resources/views/products/create.blade.php
@extends('products.layout')
  
@section('content')
<div class="row">
    <div class="col-lg-12 margin-tb">
        <div class="pull-left">
            <h2>Add New Product</h2>
        </div>
        <div class="pull-right">
            <a class="btn btn-primary"
href="{{ route('products.index') }}"> Back</a>
        </div>
    </div>
</div>
   
@if ($errors->any())
    <div class="alert alert-danger">
        <strong>Whoops!</strong> There were some problems with your
input.<br><br>
        <ul>
            @foreach ($errors->all() as $error)
                <li>{{ $error }}</li>
            @endforeach
        </ul>
    </div>
@endif
   
<form action="{{ route('products.store') }}" method="POST">
    @csrf
  
     <div class="row">
        <div class="col-xs-12 col-sm-12 col-md-12">
            <div class="form-group">
                <strong>Name:</strong>
                <input type="text" name="name" class="form-control"
placeholder="Name">
            </div>
        </div>
        <div class="col-xs-12 col-sm-12 col-md-12">
            <div class="form-group">
                <strong>Detail:</strong>
                <textarea class="form-control" style="height:150px"
name="detail" placeholder="Detail"></textarea>
            </div>
        </div>
        <div class="col-xs-12 col-sm-12 col-md-12 text-center">
                <button type="submit" class="btn btn-
primary">Submit</button>
        </div>
    </div>
   
</form>
@endsection
resources/views/products/edit.blade.php
@extends('products.layout')
   
@section('content')
    <div class="row">
        <div class="col-lg-12 margin-tb">
            <div class="pull-left">
                <h2>Edit Product</h2>
            </div>
            <div class="pull-right">
                <a class="btn btn-primary" href="{{ route('products.index')
}}"> Back</a>
            </div>
        </div>
    </div>
   
    @if ($errors->any())
        <div class="alert alert-danger">
            <strong>Whoops!</strong> There were some problems with your
input.<br><br>
            <ul>
                @foreach ($errors->all() as $error)
                    <li>{{ $error }}</li>
                @endforeach
            </ul>
        </div>
    @endif
  
    <form action="{{ route('products.update',$product->id) }}"
method="POST">
        @csrf
        @method('PUT')
   
         <div class="row">
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Name:</strong>
                    <input type="text" name="name" value="{{ $product->name
}}" class="form-control" placeholder="Name">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Detail:</strong>
                    <textarea class="form-control" style="height:150px"
name="detail" placeholder="Detail">{{ $product->detail }}</textarea>
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12 text-center">
              <button type="submit" class="btn btn-primary">Submit</button>
            </div>
        </div>
   
    </form>
@endsection
resources/views/products/show.blade.php
@extends('products.layout')
  
@section('content')
    <div class="row">
        <div class="col-lg-12 margin-tb">
            <div class="pull-left">
                <h2> Show Product</h2>
            </div>
            <div class="pull-right">
                <a class="btn btn-primary" href="{{ route('products.index')
}}"> Back</a>
            </div>
        </div>
    </div>
   
    <div class="row">
        <div class="col-xs-12 col-sm-12 col-md-12">
            <div class="form-group">
                <strong>Name:</strong>
                {{ $product->name }}
            </div>
        </div>
        <div class="col-xs-12 col-sm-12 col-md-12">
            <div class="form-group">
                <strong>Details:</strong>
                {{ $product->detail }}
            </div>
        </div>
    </div>
@endsection
Sekarang kita siap untuk menjalankan contoh aplikasi kasar kita dengan laravel 8 jadi
jalankan perintah di bawah ini untuk menjalankan cepat:
php artisan serve

Anda mungkin juga menyukai