Laravel存储库模式firstOrCreate(wasRecentlyCreated)

时间:2018-09-29 07:27:13

标签: laravel eloquent repository-pattern

在使用 firstOrCreate 保存记录时,我需要检查返回记录是否已存在或已新创建。

我正在使用Laravel l5-repository模式。

没有存储库模式,我们可以通过以下脚本来实现。

$designation = Designation::firstOrCreate($match, $data);
$designation->save();

if($designation->wasRecentlyCreated){
    echo 'Created successfully';
} else {
    echo 'Already exist';
}

但使用存储库方法 返回值只输出数据而不是Class瞬时值 (我想是因为变压器) 。我该如何验证。

我尝试过的。

$designation = $this->repository->firstOrCreate($match, $data);

if($designation->wasRecentlyCreated){
    return $this->respondCreated($designation);
}
else{     
    return $this->respondInternalError('Already Exist');
}

我收到的错误消息

  

试图获取非对象的属性

0 个答案:

没有答案