Это произойдет автоматически, когда вы загрузите отношения. Вы можете сделать это с помощью с () или load () в зависимости от того, есть ли у вас модель.
В приведенном выше примере вы будете использовать with()
, поскольку вы одновременно получаете пользователя:
$user = User::with('userDetails')->find(2);
В качестве альтернативы, если у вас уже была модель User
, вы бы использовали load()
:
$user = User::find(2);
$user->load('userDetails');
Теперь, учитывая все вышесказанное, поскольку у вас есть только одна модель User
, а не коллекция, вам не нужно беспокоиться о (n + 1) проблеме, которую решает загрузка, поэтому вы можете просто получить доступ собственность и Laravel автоматически получат информацию для вас, например:
$user = User::find(2);
$user->user_details;
Теперь, если вы сделаете dd($user->toArray())
, вы увидите, что информация была загружена.
Просто к сведению, вместо использования print_r()
с die()
и упаковки его в теги <pre>
, вы можете использовать dump () и dd () helper функции вместо.