ChatGPT解决这个技术问题 Extra ChatGPT

在数据透视表中附加数据时时间戳不更新

我正在使用以下附加语句在数据透视表中创建一行。

$music = Music::find(1);
$music->users()->attach(1);

这会在数据透视表中插入一行,但是,它不会更新时间戳。时间戳仍然是 0000-00-00 00:00:00

有什么方法可以更新数据透视表中的时间戳。 ?

提前致谢,


L
Lukáš Irsák

如果您希望数据透视表自动维护 created_at 和 updated_at 时间戳,请在关系定义上使用 withTimestamps() 方法。

return $this->belongsToMany('Role')->withTimestamps();

对于 Laravel 4.2:使用数据透视表

Laravel 5.0:使用数据透视表

Laravel 5.1:检索中间表列

Laravel 5.2:通过中间表列过滤关系

Laravel 5.3:通过中间表列过滤关系

Laravel 5.4:检索中间表列

Laravel 5.5:检索中间表列

Laravel 5.6:检索中间表列

Laravel 5.7:检索中间表列

Laravel 5.8:检索中间表列


这是否必须在关系的双方?还是只有一侧?
@Noitidart 我刚刚检查过,似乎它需要在关系的双方才能工作。