Return 集合而不是 Eloquent 模型中的关系
Return collection instead of relationship in Eloquent Model
在我的模型中,我有一个集合,我正尝试在我的模型中 return 它,而不是关系对象。
这样我就可以打电话给 $user->items
并获取该集合。
在模型中,函数如下所示:
class User extends Model {
public function channelsAttribute() {
$name = Company::where('id', $this->id)->first()
$items = Item::where('company_id', $name)->get();
return $items;
}
}
Relationship method must return an object of type Illuminate\Database\Eloquent\Relations\Relation
因为有两种方法,我找不到使用关系的方法;但是 $items
return 的值集合。
我该怎么办?
你没有正确调用方法,而不是
function channelsAttribute()
你需要做的
function getChannelsAttribute()
在我的模型中,我有一个集合,我正尝试在我的模型中 return 它,而不是关系对象。
这样我就可以打电话给 $user->items
并获取该集合。
在模型中,函数如下所示:
class User extends Model {
public function channelsAttribute() {
$name = Company::where('id', $this->id)->first()
$items = Item::where('company_id', $name)->get();
return $items;
}
}
Relationship method must return an object of type Illuminate\Database\Eloquent\Relations\Relation
因为有两种方法,我找不到使用关系的方法;但是 $items
return 的值集合。
我该怎么办?
你没有正确调用方法,而不是
function channelsAttribute()
你需要做的
function getChannelsAttribute()