【发布时间】:2013-12-11 12:27:33
【问题描述】:
在我的 BaseModel 中扩展了 Eloquent 我有 validate 方法。
我的问题是,如果正在创建或更新模型,我如何在此方法中检测到?
我知道并且我使用模型事件,但不知道如何实现相同的内部方法。
【问题讨论】:
在我的 BaseModel 中扩展了 Eloquent 我有 validate 方法。
我的问题是,如果正在创建或更新模型,我如何在此方法中检测到?
我知道并且我使用模型事件,但不知道如何实现相同的内部方法。
【问题讨论】:
Laravel 有一个名为 exists() 的方法来检查模型是否来自数据库。
如果模型创建或更新,以下将返回 true。
$model->exists
更新模型:
$affectedRows = User::where('votes', '>', 100)->update(array('status' => 2));
dd($affectedRows);
参考:
【讨论】:
$this->exists() 是真还是假。
您可以使用getOriginal() 查看该模型中是否已设置属性。
根据您获得的内容,您可以知道它是新模型还是现有模型。
getOriginal() 文档:
http://laravel.com/api/source-class-Illuminate.Database.Eloquent.Model.html#2114-2124
【讨论】: