在post index.html.erb文件中包含多个结果是否正常?让我们在文件中说我想获得热门帖子和最近的帖子。我可以将它们放在索引文件中,还是应该做其他事情。像这样:
def index
/* get recent posts */
@News = News.all
/* get popular posts */
(popular posts code)
end
并在index.html.erb文件中,我会将热门帖子放在某种侧边栏中
答案 0 :(得分:3)
如果这是一个关于在哪里放置执行查询的逻辑的问题,那么不,它们不应该在index.html.erb中。它们应该在对象模型中。您可以将逻辑放在对象控制器中,但这不是一个好的做法。
我只是在模型中定义一些方法,用于查询数据库以查找要显示的内容。我在几周前开发的应用程序中做了类似的事情:
def self.upcoming
Event.where('events.when > ?', Time.now).order(when: :asc)
end
该类方法返回我的数据库中计划在当前时间之后开始的所有事件(有点像我猜的最近的帖子)。我使用Event.upcoming
答案 1 :(得分:0)