1
사용자 모델에서 belongsToMany()
을 사용하여 자체 참조 관계를 모델링했습니다. 사용자는 서로 에이전트 또는 판매자가 될 수 있습니다. 따라서 우리는 한정자입니다. seller()
및 agents()
Laravel에서 관계 가져 오기에서 Query Builder 객체 가져 오기
이제 우리는 표에 대한 쿼리가 필요한 https://github.com/Nayjest/Grids을 사용하고 있습니다.
예를 들어 판매자의 에이전트를 표시하려는 그리드에서.
현재 우리는이를 위해 수작업으로 작성한 쿼리를 사용하고 있습니다.하지만 모델에서 로직을 가져 오려고합니다.
그래서 우리가 필요한 것은
$seller = Auth::user(); // or any other instance of User
$seller->agents
우리는 운없이
$query = $seller->newQuery()->where('laravel_reserved_1.id', '=', $seller->id);
return $user->agents()->getRelationQuery($query, $query);
을 시도 가져올 때 실행 (쿼리 빌더 오브젝트 등) 쿼리입니다. > getQuery()는 우리가
SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'id' in order clause is ambiguous
(SQL: select * from `users` inner join `user_connections` on
`users`.`id` = `user_connections`.`user_id`
where `user_connections`.`related_user_id` = 2 and
`user_connections`.`type` = agent order by `id` asc
limit 15 offset 0)
변수'$ seller'는 무엇입니까? – TheFallen
@TheFallen A 사용자 인스턴스 – Alex
그냥'$ user-> agents() -> getQuery()'가 아닌가? – alepeino