我正在尝试在 laravel 项目中使用 wasChanged 和 wasRecent 创建的模型,但它们在下面的代码中都是错误的
$saved=$project->accessInfo()->updateOrCreate(['type'=>$request->type],['value'=>$data]);
dd($project->accessInfo[0]->wasChanged(),$project->accessInfo[0]->wasRecentlyCreated,$project->wasRecentlyCreated,$project->wasChanged());
//here is my relation in Project model
public function accessInfo()
{
return $this->hasMany('ModulesProjectModelsProjectAccessInfo', 'project_id');
}
同样在下面的代码返回错误
dd($project->accessInfo->wasChanged(),$project->accessInfo()->wasRecentlyCreated)
//No such method or attribute in both cases
//Call to undefined method Illuminate\Database\Eloquent\Relations\HasMany::wasChanged()
提前感谢您的帮助。
getChanges
- 获取已更改的属性。
getDirty
- 获取自上次同步以来已更改的属性。
当您想知道模型自从数据库中查询以来是否已编辑或根本没有保存时,请使用 ->isDirty()
函数。