Я пытаюсь обновить свой элемент таблицы, но я использую уникальную проверку в своем контроллере, я установил primaryKey = 'item_id' в своей модели, но я продолжаю получать эту ошибку с указанием неизвестного идентификатора столбца eventho я установил primaryKey как item_id в моя модель, когда я пытаюсь использовать проверку: // 'barcode' => 'unique: item' // эта ошибка не появляется, и программа работает, но в уникальном штрих-коде она проверяет себя на наличие уникального столбца и терпит неудачу, но видит собственное поле. вот почему я меняю свою проверку на это: // 'barcode' => 'unique: item, barcode,'. $ item_id, // когда я пытаюсь обновить, он показывает мне эту ошибку: Столбец не найден: 1054 Неизвестный идентификатор столбца 'in' where clause '(SQL: выберите count (*) как агрегат из item
, где barcode
= A002 и id
<> 12)
ItemController:
public function update(Request $request,$item_id)
{
$messages = [
'unique' => 'Sorry this barcode already exist....',
];
$this->validate($request,[
'barcode' => 'unique:item,barcode,'.$item_id,
],$messages);
$data = $request->except(['_token']);
Item::where('item_id',$item_id)->update($data);
return redirect('/item')->with('sukses','item successfully updated');
}
это моя модель. php:
class Item extends Model
{
protected $table = 'item';
protected $primaryKey = 'item_id';
protected $fillable = ['barcode','item_name','category_id','satuan_id','price'];
public function category_r(){
return $this->belongsTo('App\Category','category_id','category_id');
}
public function satuan_r(){
return $this->belongsTo('App\Satuan','satuan_id','satuan_id');
}
}