如果我有一个模型Student
并且它有三个属性:
name
和age
位于fillable
数组中。
因此,如果我想创建一个新学生并分配他/她的classroom_id,我必须这样做:
$student = App\Student::create(
[
'name'=>$request->input('name'),
'age'=>$request->input('age')
]
);
$student->classroom_id = 1;//for example
$student->save();
这是对的吗?如果这是对的,实际上我会插入两次动作,对吗?
答案 0 :(得分:1)
您只需更新模型中的$fillable
数组即可包含classroom_id
,它将变为可分配,这意味着您无需进行两次插入即可获取其中的所有数据
因此,您的$fillable
数组看起来与此类似:
protected $fillable = ['name', 'age', 'classroom_id'];
您的创建方法与此类似:
$student = App\Student::create(
[
'name' => $request->input('name'),
'age' => $request->input('age'),
'classroom_id' => 1
]
);
这是正确的方法,而不是两次运行插入,这是不必要的。