"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Laravel에서 `$model->relation()`과 `$model->relation`의 차이점은 무엇입니까?

Laravel에서 `$model->relation()`과 `$model->relation`의 차이점은 무엇입니까?

2024년 11월 20일에 게시됨
검색:553

Laravel의

What\'s the Difference Between `$model->relation()` 및 `$model->relation`? 
relation()` 및 `$model->relation`을 Laravel에서 사용하시겠습니까? " />

$model->relation()과 $model->relation

Laravel에서 구문 $model->relation() 및 $model->relation은 모델 관계에 액세스하는 데 자주 사용됩니다. 그러나 그 방식은 크게 다릅니다. 기능.

$model->relation()

$model->relation()은 모델에 정의된 관계 메소드를 호출합니다. 이 메소드는 실제 관계 객체를 반환합니다. , 추가 쿼리 사용자 정의가 가능합니다. 예:

$distributors = $store->distributors()->where('priority', '>', 4);

$model->관계

$model ->relation은 관계의 결과를 검색합니다. Laravel은 관계에 대한 getter 메소드를 동적으로 생성하여 모델 속성으로 액세스할 수 있도록 합니다. 이 구문은 자동으로 관계 데이터를 가져오고 결과를 반환합니다. 예:

$distributors = $store->distributors;

주요 차이점

  • 반환 유형: $model->relation()은 관계 개체를 반환하고, $model->relation은 관계 개체의 결과를 반환합니다. 관계.
  • 쿼리 사용자 정의: $model->relation()은 결과를 가져오기 전에 추가 쿼리 사용자 정의를 허용하는 반면 $model->relation은 정의된 기본 쿼리를 기반으로 결과를 검색합니다. 관계 방법.
  • 동적 속성: $model->relation은 Laravel의 동적 관계 속성 기능을 활용하여 getter를 자동으로 생성합니다. 방법.

사용 사례

  • 결과를 가져오기 전에 관계 쿼리를 수정해야 하는 경우 $model->relation()을 사용하세요.
  • 사용자 지정 없이 단순히 관계 데이터를 검색하려는 경우 $model->relation을 사용하세요.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3