我尝试更新表Student中的名称值,并在表用户处自动更新列名称
我的控制器代码是
public function update(Request $request, $id)
{
$user = User::where('id', $id)->first();
$user->name = $request->name;
$user->save();
$student= Student::where('id', $id)->first();
$student->name = $request->name;
$student->save();
return redirect()->route('profilestudent.edit', Auth::user()->student->id);
}
没有错误,但是它更改了表用户的另一个用户的名称。
答案 0 :(得分:0)
您可以尝试使用mutators:
class User extends Model
{
public function setNameAttribute($value)
{
$student= Student::where('user_id', $this->id)->first() if id is not key in Student
$student->name = $value;
$student->save();
$this->attributes['first_name'] = $value;
}
}
答案 1 :(得分:0)
您应该使用观察者。用户更新后,学生也将自动更新。