i have a problem in my code API laravel 8 in update data, i think my code it's correct, i don't know where the error, is it i'm wrong in my code or am i wrong when i updating data this is the code the controller
public function update(Request $request, $id)
{
$cek_pelanggan = DaftarPelanggan::firstWhere('id', $id);
if ($cek_pelanggan) {
$data_pelanggan = DaftarPelanggan::find($id);
$data_pelanggan->nama_pelanggan = $request->nama_pelanggan;
$data_pelanggan->alamat = $request->alamat;
$data_pelanggan->no_telp = $request->no_telp;
$data_pelanggan->diskon_id = $request->diskon_id;
$data_pelanggan->save();
return response([
'status' => 'OK',
'message' => 'Data Pelanggan Berhasil Diubah',
'data' => $data_pelanggan
], 200);
} else {
return response([
'status' => 'Not Found',
'message' => 'Data Tidak Ditemukan',
], 404);
}
}
this is the model
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Laravel\Sanctum\HasApitokens;
class DaftarPelanggan extends Model
{
use HasFactory, HasApitokens;
protected $table = "daftar_pelanggans";
protected $primaryKey='id';
protected $fillable = ['nama_pelanggan','alamat','no_telp','diskon_id'];
public function diskon(){
return $this->belongsTo(Diskon::class,'diskon_id')->withDefault([
'nama_member' => 'Guest',
]);
}
}
this is the routes
Route::group(['middleware' => ['auth:sanctum']], function () {
Route::get('auth/me', 'App\Http\Controllers\Auth\AuthController@me');
Route::post('auth/logout', 'App\Http\Controllers\Auth\AuthController@logout');
Route::get('/daftar_pelanggan', 'App\Http\Controllers\API\DaftarPelangganController@index');
Route::post('/daftar_pelanggan/create', 'App\Http\Controllers\API\DaftarPelangganController@create');
Route::put('/daftar_pelanggan/update/{id}', 'App\Http\Controllers\API\DaftarPelangganController@update');
Route::delete('/daftar_pelanggan/delete/{id}', 'App\Http\Controllers\API\DaftarPelangganController@delete');
});