Итак, я хочу получить доступ к сохраненным данным в диспетчере связей нитей laravel, но не смог найти никаких подсказок в официальной документации.
В Filament Resource мы могли бы легко получить сохраненные данные в afterCreate через $this->record
protected function afterCreate(): void
{
$this->record // stored record
}
Но как это сделать в первом менеджере отношений? Я не смог найти никаких намеков на это в официальной документации v3.






Я предлагаю использовать крючок after для действий.
В диспетчере отношений есть разные типы действий, такие как CRUD, Attach и Associating.
Независимо от ваших действий во взаимоотношениях, вы можете использовать after перехватчик этих действий и внедрить модель в обратный вызов.
Например, если в вашем менеджере отношений есть действия CRUD, вы можете получить доступ к созданной модели, как показано ниже:
return $table
->recordTitleAttribute('name')
->columns([
Tables\Columns\TextColumn::make('name'),
])
->headerActions([
// ...
Tables\Actions\CreateAction::make()->after(function (Product $product) {
dd($product);
})
])
Вы можете заменить модель продукта своей собственной моделью или просто использовать абстрактную модель Laravel.
Для EditAction, AttachAction, AssociateAction, ... вы можете сделать то же самое.