Operasi CRUD (Create Read Update Delete) pada Laravel Part 1

crud laravel part1

Membuat Model

pada artikel sebelumnya kita telah membuat database, melakukan migrasi dan melakukan seeding, pada artikel berikut akan dijelaskan mengenai pembuatan model pada laravel. untuk membuat model pada laravel menggunakan perintah

php artisan make:model model/Mahasiswa
dengan mengeksekusi perintah diatas pada cmd maka akan bertambah sebuah folder model dan file dengan nama Mahasiswa.php (model/Mahasiswa.php) pada file tersebut akan dibuatkan coding seperti berikut :

namespace Appmodel;

use IlluminateDatabaseEloquentModel;

class Mahasiswa extends Model
{
//
}

kita juga dapat menggunakan seeding dengan menggunakan model, silahkan modifikasi code diatas menjadi seperti berikut :

namespace Appmodel;

use IlluminateDatabaseEloquentModel;

class Mahasiswa extends Model
{
protected $table = "mahasiswa";
}

kemudian pada file MahasiswaTableSeeder.php ubah menjadi seperti berikut :

use AppmodelMahasiswa;
use CarbonCarbon;
use IlluminateDatabaseSeeder;
use IlluminateSupportFacadesDB;

class MahasiswaTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
$mhs = new Mahasiswa();
$mhs->nim = "1209007";
$mhs->nama = "Bagus";
$mhs->prodi = "Komputer Akuntansi";
$mhs->created_at = Carbon::now()->format('Y-m-d H:i:s');
$mhs->updated_at = Carbon::now()->format('Y-m-d H:i:s');
$mhs->save();
}
}

eksekusi kembali perintah php artisan db:seed jika berhasi akan bertambah sebuag record baru pada tabel mahasiswa.

CRUD Table Mahasiswa

tambahkan terlebih dahulu sebuah controller mahasiswa dengan perintah 
php artisan make:controller MahasiswaController –resource
silahkan buka file controller/MahasiswaController.php maka isinya sebagai berikut:

namespace AppHttpControllers;

use IlluminateHttpRequest;

class MahasiswaController extends Controller
{
/**
* Display a listing of the resource.
*
* @return IlluminateHttpResponse
*/
public function index()
{
//
}

/**
* Show the form for creating a new resource.
*
* @return IlluminateHttpResponse
*/
public function create()
{
//
}

/**
* Store a newly created resource in storage.
*
* @param IlluminateHttpRequest $request
* @return IlluminateHttpResponse
*/
public function store(Request $request)
{
//
}

/**
* Display the specified resource.
*
* @param int $id
* @return IlluminateHttpResponse
*/
public function show($id)
{
//
}

/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return IlluminateHttpResponse
*/
public function edit($id)
{
//
}

/**
* Update the specified resource in storage.
*
* @param IlluminateHttpRequest $request
* @param int $id
* @return IlluminateHttpResponse
*/
public function update(Request $request, $id)
{
//
}

/**
* Remove the specified resource from storage.
*
* @param int $id
* @return IlluminateHttpResponse
*/
public function destroy($id)
{
//
}
}

langkah berikutnya kita akan membuat route pada file routes/web.php tambahkan baris seperti berikut ini :


Route::group(["prefix" => "mhs", "as" => "mhs."], function () {
Route::get("/mahasiswa/tambah", ["uses" => "MahasiswaController@tambah", "as" => "tambah"]);
Route::post("/mahasiswa/simpan", ["uses" => "MahasiswaController@simpan", "as" => "simpan",]);
Route::get("/mahasiswa/all", "MahasiswaController@index");
Route::get("/mahasiswa/{id}/delete", "MahasiswaController@delete");
Route::get("/mahasiswa /{id}/ubah", "MahasiswaController@restore");
});

silahkan akses route yang sudah dibuat pastikan dapat diakses pada browser, misalkan kita akan mengakses “/mahasiswa/all” berarti di url browser kita masukan :

http://localhost/[nama_project]/public/mhs/mahasiswa/all
http://localhost/[nama_project]/public/mhs/mahasiswa/searchhttp://localhost/[nama_project]/public/mhs/mahasiswa/1/deletehttp://localhost/[nama_project]/public/mhs/mahasiswa/1/restore

jika kita perhatikan pada route diatas terdapat sebuha prefix mhs,maksudnya adalah untuk mengakses url di browser harus diawali dengan /mhs.

Menampilkan Data

untuk menampilkan data pada tabel mahasiswa kita akan menggunakan fungsi index() pada MahasiswaController, untuk itu kita akan modifikasi file tersebut seperti ini :
public function index()

   
public function index()
{
return AppModelMahasiswa::all();
}

kira-kira outputnya seperti berikut :

Post a Comment