我的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组合在一起的数组。 我如何才能以最佳/高效的方式实现这一目标,例如还允许每次查询时分页较少?
谢谢!