Я пытаюсь использовать DB
построить запрос следующим образом:Laravel 5,2 DB Query
Получить все Distributors
принадлежащие к User
с их Accounts
, которые имеют Notes
.
Я наклоняю голову вокруг этого запроса. Вот что я имел, что работает в том, что он получает выкладывает информацию мне нужно в вопросах один массив, но 2: note
name
перезаписывает account
name
, так как они оба называют это, и я не могу передать в $user->
заменить 2
Рабочая (вид)
$user = Auth::user();
$accounts = DB::table('distributors')
->join('accounts', function ($join) {
$join->on('distributors.vip_abbv', '=', 'accounts.dist_abbv')
->where('distributors.user_id', '=', 2);
})
->join('notes', 'notes.account_id', '=', 'accounts.id')
->select('accounts.name', 'notes.*')
->get();
Что мне нужно
$ пользователя = Auth :: пользователь();
$accounts = DB::table('distributors')
->join('accounts', function ($join, $user) {
$join->on('distributors.vip_abbv', '=', 'accounts.dist_abbv')
->where('distributors.user_id', '=', $user->id);
})
->join('notes', 'notes.account_id', '=', 'accounts.id')
->select('accounts.name (this is overwritten. can I change it to come out account_name so it doesnt?)', 'notes.*')
->get();
любые ошибки @Packy –
Ошибка проходил второй параметр с $ присоединиться, так что я просто использовал Auth для текущего идентификатора пользователя против переменной, и она работала. См. Принятый ответ. – Packy