因此,我有2个表,文章和子类别。它们通过雄辩的方式链接:文章具有许多sub_categories的,而sub_categories属于authorTo文章。它们与这样的外键链接:在“文章”的categorie_id中。
如何检索整个表数据文章,其中类别为“ DOG” 抱歉抽象,但这是我能解释的最好方法吗? :D
商品模型
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class Articles extends Model
{
use SoftDeletes;
public function user() {
return $this->belongsTo('App\User') ;
}
public function sous_categories() {
return $this->belongsTo('App\SouCategories') ;
}
}
sub_categorie模型
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class SouCategories extends Model
{
public function categories() {
return $this->belongsTo('App\Categories') ;
}
public function articles() {
return $this->hasMany('App\Articles','cat_id') ;
}
}
在我的控制器中,我试图基于sub_category上的外键获取数据,并且foreach子类别正在创建一个数组,例如mainslider,其中包含具有某个sub_category的文章
public function index()
{
$infos = Infos::all();
$categories = Categories::all();
$articles=Articles::all();
$mainslider=Soucategories::with('articles')->get();
foreach($mainslider as $record){
dd($record->articles);
}
die();
return view('frontEnd.homepage',compact('infos','categories','articles','mainslider'));
}
答案 0 :(得分:0)
根据您发布的代码,它应该类似于
Soucategories::where('title', 'DOG')->with('articles')->get();
似乎在Soucategory上只会出现名称为“ DOG”的东西,因此您可以执行类似的操作
Soucategories::where('title', 'DOG')->first()->articles