Как получить данные из другой таблицы из базы данных? - PullRequest
0 голосов
/ 03 июля 2019

Я хочу получить данные из таблицы role_users, столбец role_id. На данный момент, у меня есть это в моем контроллере:

$data['contact_users'] = DB::table('contacts')
                    ->join('users' , 'users.id', '=', 'contacts.contact_id')
                    ->join('industries' , 'industries.id', '=', 'users.industry_id')
                    ->join('countries' , 'countries.id', '=', 'users.country_id')
                    ->join('organization_types' , 'organization_types.id', '=', 'users.organization_type_id')
                    ->select('users.*','industries.industry','countries.country','organization_types.organization_type')
                    ->where('contacts.contact_id','!=',$id)
                    ->where('users.deleted_at','=',NULL)
                    ->whereIn('contacts.user_id', $contact_id)
                    ->whereNotIn('contacts.contact_id', $contact_id)
                    ->whereNotIn('contacts.contact_id', $inviter_id)
                    ->groupBy('contact_id')
                    ->take(4)
                    ->get();

Я использую его с этим кодом:

{{$contact->industry_id}} or {{$contact->country_id}}

Мне нужно использовать что-то вроде этого.

{{$contact->role_id}}

, который работает для каждого пользователя. Но мне нужно получить данные из role_users, столбец role_id. Я не знаю, как использовать ->join(), и мне это очень нужно. Спасибо.

1 Ответ

1 голос
/ 03 июля 2019

Я добавил одно дополнительное соединение и одно поле выбора в конце,

$data['contact_users'] = DB::table('contacts')
    ->join('users', 'users.id', '=', 'contacts.contact_id')
    ->join('industries', 'industries.id', '=', 'users.industry_id')
    ->join('countries', 'countries.id', '=', 'users.country_id')
    ->join('organization_types', 'organization_types.id', '=', 'users.organization_type_id')
    ->join("role_users", "role_users.user_id","=","users.id")
    ->select('users.*', 'industries.industry', 'countries.country', 'organization_types.organization_type', "role_users.role_id")
    ->where('contacts.contact_id', '!=', $id)
    ->where('users.deleted_at', '=', null)
    ->whereIn('contacts.user_id', $contact_id)
    ->whereNotIn('contacts.contact_id', $contact_id)
    ->whereNotIn('contacts.contact_id', $inviter_id)
    ->groupBy('contact_id')
    ->take(4)
    ->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...