我有以下代码行来确定数据库中是否存在记录,如果确实存在,则相应地更新它,如果没有创建它:
$test = Result::where('match_id','=',$input['id'])->get();
if(empty($test)){
Result::create($result);
} else {
Result::where('match_id','=',$input['id'])->update($result);
};
return redirect('admin/results');
更新部分工作得很好,但是创建元素似乎不起作用。当我剥离并使用创建它工作正常,所以无法找出问题
答案 0 :(得分:1)
您必须在模型中将属性设置为可填写:
protected $fillable = ['a','b'];
还有更好的方法:
Result::updateOrCreate(['match_id'=>$input['id']], ['a'=>$input['a'],'b'=>$input['b']])