07 June 2021 23:03 2556 View
Cara Membuat CRUD Rest API dengan Lumen – Create (Simpan ke Database) - Part 4 - Halo semuanya kembali kita akan melanjutkan CRUD dengan Lumen, sebelumnya kita sudah menyelesaikan Cara menampilkan data dari database dengan format JSON. Sekarang kita akan mencoba membuat REST API untuk simpan data ke dalam database (Create). Silahkan ikuti cara-cara berikut ini :
Sekarang teman-teman cari file BiodataController.php
di dalam folder app/Http/Controllers
dan silahkan tambahkan fungsi ini, tepat di bawah public function index()
public function store(Request $request)
{
$validator = Validator::make($request->all(), [
'nama_lengkap' => 'required',
'alamat' => 'required',
]);
if ($validator->fails()) {
return response()->json([
'success' => false,
'message' => 'Semua Kolom Wajib Diisi!',
'data' => $validator->errors()
],401);
} else {
$biodata = Biodata::create([
'nama_lengkap' => $request->input('nama_lengkap'),
'alamat' => $request->input('alamat'),
]);
if ($biodata) {
return response()->json([
'success' => true,
'message' => 'Data Anda Berhasil Disimpan!',
'data' => $biodata
], 201);
} else {
return response()->json([
'success' => false,
'message' => 'Biodata Anda Gagal Disimpan!',
], 400);
}
}
}
Dari kode kita diatas terdapat fungsi store
yang mana fungsi ini akan kita gunakan untuk menyimpan data ke dalam database serta kita membungkus sebuah validasi/validator kedalam fungsi store
tujuan agar data setiap request tidak boleh kosong, sama halnya sering kita gunakan validasi di framework laravel.
Seperti ini code validasinya
$validator = Validator::make($request->all(), [
'nama_lengkap' => 'required',
'alamat' => 'required',
]);
Jika kita menjalankan di aplikasi REST API kurang lebih seperti ini respon validasinya.
{
"success": false,
"message": "Semua Kolom Wajib Diisi!",
"data": {
"nama_lengkap": [
"The nama lengkap field is required."
],
"alamat": [
"The alamat field is required."
]
}
}
Untuk melakukan uji coba, terlebih dahulu kita akan menambahkan baris code di folder routes
dan cari file web.php
, pastekan code dibawah ini
$router->post('/biodata', 'BiodataController@store');
Jika sudah selesai sekarang kita test lewat aplikasi insomnia, agar data dapat tersimpan kedatabase, jangan lupa ubah ke Method jadi POST
lalu send.
Jika berhasil memberikan respon message ”Data Berhasil dismpan!” sebaliknya jika gagal akan memberikan respon gagal.
Sampai disini pembahasan tentang Cara Membuat CRUD Rest API dengan Lumen – Create (Simpan ke Database), semoga bermanfaat.
Terimakasih.
PHP
Dilihat 2692 Kali
PHP
Dilihat 1917 Kali
PHP
Dilihat 1811 Kali
PHP
Dilihat 2782 Kali
Laravel
Dilihat 4109 Kali
Laravel
Dilihat 3193 Kali
Lumen
Dilihat 2197 Kali
Harap berkomentar yang berkaitan dengan topik. Terimakasih