Eloquent ORM을 이용하여 아래의 데이터를 조회하기 위한 코드를 작성했습니다.

  • A가 가진 모든 B들과
  • 그 B들이 가진 모든 C들 중 A와 관련 있는 것만 추린 것들과
  • 그 C들이 가진 모든 D들

그 결과 아래와 같은 코드가 나왔어요. ORM에 익숙한 분들은 이게 뭐? 하시겠지만 저는 굉장히 놀랬습니다 하하. 새삼 ORM에 더 익숙해지면 정말 편리해지겠구나 하는 생각이 드네요.

 

$ret = [];

$a = A::find($id);

if($a) {
    $ret = $a->load([
        'b',
        'b.c' => function($query) use ($a)
            {
                $query->where('a_id', $a->id);
            },
        'b.c.d'
    ]);
}

return $ret;

 

+
‘b’, 가 없어도 똑같이 동작하네요!

 

leaderboard-728x90

 

ShareShare on Google+Tweet about this on TwitterPin on PinterestShare on LinkedInShare on Facebook