雄辩地加入多列

时间:2020-05-24 23:44:52

标签: php laravel

我的users_favorites表:(模型为UserFavorites.php)

我的news_topics表:(模型为NewsTopics.php)

主题_type的可能值与user_favorites相同,除了_publisher

我的news_tag表:(模型为NewsTag.php)

News_tag表中还有许多与此无关的列。

所以,我要尝试的基本上是根据用户的关注来创建一个新闻源。用户可以遵循以下类型:

_team

_league

_publisher

News_topics基本上是一个类别,它通过news_topics和news_tag表之间的post_id附加。 现在,我要实现的目标是摘除用户遵循的所有post_id。它应该结合以下多个查询:

Foreach user_favorites of $ requestedUser:

if (topic type =! 'publisher') {
 NewsTopics::where(user_favorites.topic_type , =, news_topics.topic_type)
          ->where(user_favorite.topic_id, =, news_topics.id)->pluck('post_id')
 }
else {
 NewsTag::where('publisher_id',=,'user_favorite.topic_id')
}

因此,最后,我应该有一个将if和else case组合在一起的数组。 我如何才能以最佳/高效的方式实现这一目标,例如还允许每次查询时分页较少?

谢谢!

0 个答案:

没有答案