首先,我不太熟悉Laravel(或者说不太熟悉“脏”这个词)。
我偶然发现了这行代码-
if ($this->isDirty('status')) {
if (Notification::has('website-status-' . strtolower($this->status))) {
Notification::set($this->account, 'website-status-' . strtolower($this->status), $this->emailAttributes())
->email();
}
}
字符串
我不明白这到底是什么意思。我试着在网上找到答案,但Laravel网站只说了这个
“确定给定属性是否为脏属性”
这并没有什么帮助
4条答案
按热度按时间o2g1uqev1#
当您想知道模型在从数据库查询后是否被编辑过,或者根本没有保存时,可以使用
->isDirty()
函数。rbl8hiat2#
isDirty方法确定自模型加载以来是否有任何属性被更改。您可以传递特定的属性名称以确定特定的属性是否是脏的。
字符串
ymdaylpp3#
Eloquent提供了
isDirty
、isClean
和wasChanged
方法来检查模型的内部状态,并确定其属性与最初加载时相比发生了哪些变化。您可以在官方文档中找到这三种方法的完整描述和示例:https://laravel.com/docs/9.x/eloquent#examining-attribute-changes
g6ll5ycj4#
作为对公认答案的支持:
字符串