我想在laravel 5.4中验证数组值。这是我的代码。它告诉我错误。 它显示
“SQLSTATE [42S22]:未找到列:1054未知列'card_no.0'中 'where子句'(SQL:从
cards
中选择count(*)作为聚合card_no
。0
= 2005)“
当我尝试插入重复的2005时。是否可以显示哪个值不正确?提前致谢。
叶片
name="card_no[]"
控制器功能
public function store_card(Request $request)
{
$this-> validate(request(),[
"card_no.*" => 'required|max:255|unique:cards',
]);
$ent_date = date("Y-m-d");
$card_no = $request->card_no;
foreach($card_no as $value){
$card = new card() ;
$card->card_no = $value;
$card->ent_date = $ent_date;
$card->flag = '1';
$card->save();
}
return redirect('card');
}
答案 0 :(得分:0)
您必须为唯一规则提供列名称,如果您不这样做,Laravel将自行添加输入名称。 您可以参考Laravel文档here。 要解决此问题,请将规则更改为以下内容:
"card_no.*" => 'required|max:255|unique:cards,card_no'