有人可以澄清一下嗎?我以前用過Model Events
很多次,但似乎我還沒有嘗試訪問最初「創建」事件上的任何相關模型。在創建的模型事件中無法訪問關係?
例如,我有一個M2M
關係兩種型號對方:
Book() public function authors()
Author() public function books()
我救了一個新的Book對象,與相關作者,其他地方在我的代碼,並通過挖掘「創造」或「保存」人體模特兒事件(在EventServiceProvider.php),我希望能夠在同一時間像這樣以更新相關對象的某些字段:
Book::created(function($book) {
$authors = $book->authors;
foreach($authors as $a){
$a->books_authored += 1;
$a->save();
}
});
..但我不能,因爲$ authors調用返回沒有相關的對象。如果這是通常的行爲(我在這裏沒有做過不正確的事情)?有沒有辦法在初始創建/保存事件中訪問這些關係?
在此先感謝。
我已經澄清了我上面的原始問題。現在希望它更容易理解。 – Daryl
請添加顯示如何創建圖書並將其鏈接到作者的代碼。你添加的內容不會改變我的答案。 – AlexW
你們都很正確。 「創建」事件在作者被附加之前觸發,因此相關項目尚未提供。我已經忘記了一個新對象必須在任何相關對象附加到它之前實例化。謝謝。 – Daryl