1
我有一家公司和一個地址模型。關係是1-1。爲了簡化,我將使用存儲庫省略代碼。爲什麼laravel不會觸發相關的模型事件?
在公司模型我有這樣的mutator:
public function setAddressAttribute($value)
{
$this->address()->update($value);
}
當我更新我公司與作爲地址的屬性的數組「地址」屬性填充它。更新本身工作正常。
在地址模型我有這樣的:
public static function boot()
{
parent::boot();
static::saved(function($address)
{
dd('saved');
});
}
我已經嘗試了不同的活動,如創建/更新,但他們只只有當我創建一個新的公司,這樣的地址的工作原理:
$company->address()->save(new Address($attributes['address']));
在這種情況下,我可以捕捉事件,但是當我嘗試更新地址時,儘管它實際上得到更新,事件不會觸發。
基本上我只需要對地址進行地理編碼,當我更新它,並把緯度/經度值。
感謝
更新 其實我注意到,當我使用更新方法沒有事件被觸發。如果我使用save(),那麼一切都沒問題。
我想這一事件也沒有任何反應好像模型被更新 – Victor 2015-03-25 14:09:26