Php 口若悬河的关系,有很多后一种归属
在Php 口若悬河的关系,有很多后一种归属,php,laravel,laravel-4,Php,Laravel,Laravel 4,在User模型中,我使用belongsTo查找用户的以下用户: public function following() { return $this->belongsToMany('User', 'connections', 'user', 'follows'); } 虽然这很好,但我还想从表Feed中获取项目,该表将owner设置为连接的列后面的中的值,因此我尝试将此函数添加到用户模型: public function feed() { retu
User
模型中,我使用belongsTo
查找用户的以下用户:
public function following()
{
return $this->belongsToMany('User', 'connections', 'user', 'follows');
}
虽然这很好,但我还想从表Feed
中获取项目,该表将owner
设置为连接的列后面的中的值,因此我尝试将此函数添加到用户
模型:
public function feed()
{
return $this->hasMany('Feed', 'owner')->orderBy('created_at', 'desc');
}
然后用以下命令调用所有内容:
User::find(Auth::user()->id)->following->feed;
这会引发一个错误,我想我不能在belongsTo
之后调用hasMany
?用户::查找(Auth::User()->id)
等同于Auth::User()
。就用后者吧
由于following
是一种归属关系,因此它返回多条记录。因此Auth::user()->following
返回一个集合,而不是一个模型。您只能直接在模型上调用feed
方法
如果您使用的是Laravel4.1(仍处于测试阶段),那么这里可能会使用一个新的hasManyThrough
类型关系。您是否尝试过通过延迟加载来实现它
User::with("following.feed")->first();
我不能说它是否会起作用,但它可能会起作用。@JosephSilber肯定会(idk),但这不是我想要的。我需要能够发送任何用户的id。这不会给我一个来自我跟踪的用户的提要项数组,是吗?这就是我需要得到的。。。