在扩展 Eloquent 的 BaseModel 中,我有验证方法。
我的问题是,如果正在创建或更新模型,我如何在此方法中检测到?
我知道并且我使用模型事件,但无法弄清楚如何实现相同的内部方法。
答案 0 :(得分:1)
Laravel有一个名为exists()
的方法来检查模型是否来自数据库。
如果模型已创建或更新,则以下内容将返回true。
$model->exists
更新模型:
$affectedRows = User::where('votes', '>', 100)->update(array('status' => 2));
dd($affectedRows);
<强>参考:强>
答案 1 :(得分:0)
您可以使用getOriginal()
查看是否已在该模型中设置了属性。
根据您获得的内容,您可以知道它是新模型还是现有模型。
getOriginal()
docs:
http://laravel.com/api/source-class-Illuminate.Database.Eloquent.Model.html#2114-2124