为什么我的数据透视表中的updated_at字段没有更新以进行以下设置?
模型
class Conversation extends Model {
public function users()
{
return $this->belongsToMany('App\User')->withTimestamps();
}
}
控制者
$conversation = Conversation::find($id);
$conversation->users()->touch();
就我所知,最后一行还应该更新数据透视表的updated_at字段,不是吗?
但这不是。现在,我必须通过数据库查询手动进行操作。
最佳答案
我认为最好的方法是:
$conversation->users()->updateExistingPivot(
$conversation->users()->get(),
['updated_at' => date('Y-m-d H:i:s')]
);
它对我有用(Laravel 5.7)。
关于laravel-5 - Laravel 5>触摸式数据透视表(多对多),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35243156/