0
我想搜索给定用户在给定帖子上制作的相似模型。 我有一个后模型为:邮政根据父母在laravel中查找相关模型
class Post extends \Eloquent
{
protected $fillable = [];
public function likes()
{
return $this->morphMany('Like', 'likeable');
}
}
和一个像模型:
class Like extends \Eloquent
{
protected $fillable = [];
/**
* @return \Illuminate\Database\Eloquent\Relations\MorphTo
*/
public function likeable()
{
return $this->morphTo();
}
/**
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
*/
public function owner()
{
return $this->belongsTo('User', 'owner_id');
}
}
和默认用户laravel提供模型。
现在我已经询问后模型中使用POST_ID像
$post=Post::find(10);
和用户找到一个职位模型像
$user=User::find(1);
现在我想找到像这个用户提出(1)关于的帖子(10) laravel有没有这方面的功能。
我知道,我可以直接查询像使用原始其中功能
\Like::whereLikeableId('10')->whereLikeableType('Post')->whereUserId('1')->get();
但是这看起来丑陋,我想知道这样做的laravel方式。
谢谢您的回答,即工作。有没有办法像这样做:Like :: likeable($ post) - > where('user_id',1),我的意思是相反的方式,这样就变得独立于父模型 – manish 2014-09-28 19:53:40
您可以使用'whereHas'但我不认为这会让事情变得更容易。你为什么要这样? – 2014-09-29 06:46:14