如何在laravel 5.7中创建两个可填充数组

时间:2018-12-29 18:45:37

标签: php laravel model

laravel两个$ fillable数组,用于添加(创建)和修改(更新) $ fillable1用于创建 和 $ fillable2进行更新 例如

//in model
protected $fillable1 = [
'id', 'email','name', 'phone',
];//for create

protected $fillable2 = [
'name', 'phone'
];//for update

//in controler
public function store
User::create($request->all());

public function update
User::findOrFail($user_id)->fill($request->all())->save();

因此在此示例列中,电子邮件将是可创建但不可编辑的

User::create($request->all());
User::create($request->$fillable1());

User::findOrFail($user_id)->fill($request->all())->save();
User::findOrFail($user_id)->fill($request->$fillable2())->save();

1 个答案:

答案 0 :(得分:1)

$fillable由Model使用,因此,您将需要一个变量 $ fillable

尝试使用此:

protected $hidden = [
   'email', 'password',
];

只需修改您的控制器即可仅更新您想要的内容:)

User::findOrFail($user_id)->fill(['values_here'])->save();