[英]ORM in laravel 5.4 not working
我有2个表格“项目”和“品牌”。 items包含产品详细信息,例如item_id,名称和brand_id,而brands包含brandId和brand_name。 我想获取可以加入品牌和商品的商品数据。
这是我的控制器。
public function filters($id){
$items = Items::brands();
return $items;
}
这是我的模型。
public static function brands(){
return $this->hasOne('App\Brands');
}
在浏览器上运行时,我得到了以下内容。 不在对象上下文中时使用$ this
尝试这样:
模型文件:
public function brands(){
return $this->hasOne('App\Brands');
}
和像这样的控制器:
public function filters($id){
$items = Items::select("*")->with('brands')->get()->toArray();
return $items;
}
删除静态关键字
public function brand(){
return $this->hasOne('App\Brands','brand_id');
}
在您的品牌中,您需要
public function item(){
return $this->belongsTo('App\Items','brandId','brand_id');
}
和您的控制器:
public function filters($id){
$items = Items::all()->with('brands')->get();
return $items;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.