세 테이블 조인을 위한 설득력 있는 접근 방식
문제:
세 테이블을 고려합니다. 카테고리 및 사용자. 목표는 해당 ID 대신 카테고리 이름과 사용자 이름으로 기사를 검색하는 것입니다.
해결책:
Eloquent는 관계형 데이터를 검색하는 간단한 방법을 제공합니다.
모델 정의:
// Article.php namespace App\Models; use Eloquent; class Article extends Eloquent { protected $table = 'articles'; public function user() { return $this->belongsTo('App\Models\User'); } public function category() { return $this->belongsTo('App\Models\Category'); } } // Category.php namespace App\Models; use Eloquent; class Category extends Eloquent { protected $table = "categories"; public function articles() { return $this->hasMany('App\Models\Article'); } } // User.php namespace App\Models; use Eloquent; class User extends Eloquent { protected $table = 'users'; public function articles() { return $this->hasMany('App\Models\Article'); } }
웅변적인 쿼리:
카테고리 및 사용자 정보가 있는 기사를 검색하려면:
$article = \App\Models\Article::with(['user','category'])->first();
사용법:
관련 항목에 액세스하려면 데이터:
$article->user->user_name //Retrieve user name $article->category->category_name //Retrieve Category name
기타 예:
$categories = \App\Models\Category::with('articles')->get();
$users = \App\Models\Category::with('users')->get();
추가 리소스:
위 내용은 Eloquent를 사용하여 카테고리 및 사용자 정보가 포함된 기사를 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!