Mam model Epoquent i w modelu używam kwerendy zakresu do łączenia. To wszystko działa dobrze, ale próbuję dowiedzieć się, jak w kwerendzie kwerendy wybrać tylko niektóre kolumny z połączonej tabeli.Laravel 5 Epoquent scope dołącz i wybierz konkretne kolumny
Oto metoda w moim kontrolerze.
$accounts = Account::creator()->get();
Oto zapytanie zakres w modelu
public function scopeCreator($query) {
$query->leftJoin('users','users.id','=','accounts.creator_id');
}
To działa, ale zwraca wszystkie kolumn z kont i użytkowników, ale chcę tylko wszystkie kolumny z kont i tylko 2 kolumny z użytkowników.
Próbowałem to ...
public function scopeCreator($query) {
$query->leftJoin('users','users.id','=','accounts.creator_id')->select(array('id','user_name'));
}
Jednak to zwraca tylko te 2 pola od użytkowników i ignoruje kolumny z rachunków. Wiem, jak to zrobić z 2 różnymi modelami, ale to oznacza, że muszę stworzyć bezużyteczny model. Ta funkcja zapytań o zakres jest świetna, jeśli mogę po prostu zorientować się w tej części.
Pomoc jest doceniana.
To idealne ... dzięki! – bakamike
Najbardziej Witamy :-) –