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