Я начинаю с Laravel и получаю, как работает большинство основ, но не уверен, как добавить детей в модель или коллекцию. Так что в основном я могу сказать 3 модели (Пользователи, Дистрибьюторы и Учетные записи). Учетные записи принадлежат Дистрибьюторам, а Дистрибьюторы принадлежат Пользователям. Оба являются отношениями «Один-ко-многим», поэтому у Дистрибьютора может быть много учетных записей, а Пользователь может иметь много Дистрибьюторов.Laravel добавить детей к модели
Это в мой контроллер, который получает Дистрибьюторов для этого пользователя
$distributors = User::find($id)->distributors;
Моя модель пользователя
public function distributors()
{
return $this->hasMany('App\Distributor');
}
Мой дистрибьютор Модель
public function accounts()
{
return $this->hasMany('App\Account');
}
То, что я хотел бы, чтобы иметь учетные записи добавляются как дети в модель Дистрибьютора. Прямо сейчас, если я dd($distributors);
, я получаю все Дистрибьюторы для этого Пользователя, но нет учетных записей для каждого из Дистрибьюторов.
Могу ли я добавить функцию, чтобы я мог добавить их в Дистрибьюторы? Как с помощью этого вызова:
$distributors = User::find($id)->distributors->with('accounts');
Можете ли вы это объяснить? Как это получить и сохранить учетные записи дистрибьюторам в запросе? Похоже, вы просто передаете идентификатор 1? – Packy
Проверьте обновленный ответ. –
Хорошо, я понимаю, что вы говорите. Я просто подумал, что есть способ добавить это в фактическую модель каждый раз, когда получаю список дистрибьюторов, я могу также получить все связанные с ними учетные записи не только по одному. Основная цель - вернуть список всех учетных записей пользователей. Они связаны с ними через дистрибьютора. – Packy