如何更新质量分配模型?

时间:2016-06-23 01:37:22

标签: laravel-5.2

如果我有一个模型Student并且它有三个属性:

  1. 名称
  2. 年龄
  3. classroom_id
  4. nameage位于fillable数组中。

    因此,如果我想创建一个新学生并分配他/她的classroom_id,我必须这样做:

    $student = App\Student::create(
    [
    'name'=>$request->input('name'),
    'age'=>$request->input('age')
    ]
    );
    
    $student->classroom_id = 1;//for example
    
    $student->save();
    

    这是对的吗?如果这是对的,实际上我会插入两次动作,对吗?

1 个答案:

答案 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
]
);

这是正确的方法,而不是两次运行插入,这是不必要的。