colin

3786 经验值

其实我也很认真的,只是你不知道而已。睡觉都开视频伴睡...

比如:

在某个地方用了下面的语句:

$somemodel->relationship()->attach($id);

那么在somemodel 的model中如何定义这个attach事件?

protected $events = [

'????'=>XXX::class,

]

这个????要填什么?

多对多中:
比如 $somemodel->relationship()->attach($id);

如何或者这个的事件呢?

按照正常的逻辑:
多对多是先

在article model中已经设置了:

protected $dates=['published_at','created_at','updated_at'];

在controller中:
$editdata = Article::find($id);//找到数据
$editdata->views = $editdata->views+1;
//某个字段+1 $editdata->save();//保存

问题来了:
我更新这条数据并没有修改published_at字段,它的值怎么就变成更新数据的时间了?

然而我找试了一个简单的办法:
$editdata = Article::find($id);//找到数据
$editdata->views = $editdata->views+1;//某个字段+1
$editdata->published_at = $editdata->published_at->getTimestamp()+1;//published_at加1秒
$editdata->save();//保存

这样的话,时间就会变成原有的时间+1秒了。

请问各位:如果我不编辑这个published_at字段,它会默认就是变成当前时间吗?还有,我并没有设置setattribute 和getattribute。