Как повторно использовать метод Resource infoList в другом ресурсе в Laravel Filament?Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как повторно использовать метод Resource infoList в другом ресурсе в Laravel Filament?

Сообщение Anonymous »

Я работаю над проектом Laravel, используя Filament. У меня есть две модели: Пользователь и Автомобиль. Каждый Автомобиль принадлежит конкретному Пользователю. Я хочу отображать информацию о пользователе на странице автомобиля с помощью infoList, определенного в классе UserResource.
Вот подробности о моих моделях и ресурсах:
Модель пользователя:

Код: Выделить всё

class User extends Model {
public function cars() {
return $this->hasMany(Car::class);
}
}
Модель автомобиля:

Код: Выделить всё

class Car extends Model {
public function user() {
return $this->belongsTo(User::class);
}
}
UserResource:

Код: Выделить всё

class UserResource extends Resource {
public static function infoList(Infolist $infolist): Infolist {
return $infolist
->schema([
TextEntry::make('title'),
TextEntry::make('slug'),
TextEntry::make('content'),
]);
}
}
CarResource:

Код: Выделить всё

class CarResource extends Resource {
public static function infoList(Infolist $infolist): Infolist {
return $infolist
->schema([
TextEntry::make('model'),
// How to include UserResource::infoList here?
]);
}
}
Я попытался повторно использовать метод UserResource::infoList в CarResource для отображения информации о пользователе. Однако, когда я пытаюсь это сделать, Filament, похоже, ищет такие поля, как заголовок, в модели автомобиля, но их следует читать из $car->user (например, TextEntry::make('title') должен показывать $car- >user->title).
Кроме того, если мне нужно изменить UserResource, чтобы учесть это, это должно быть сделано таким образом, чтобы его можно было использовать не только в UserResource, но и а также одновременно на других ресурсах, таких как CarResource, HouseResource и т. д.
Дополнительная информация:

Код: Выделить всё

Laravel Version: 11.x
Filament Version: 3.x
Будем очень признательны за любые рекомендации и примеры. Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/788 ... l-filament
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»