【发布时间】:2011-09-04 18:07:52
【问题描述】:
我有一个网站,用户可以在该网站上提交提交内容,所有内容都会显示在主页上。我想在每个提交上放置一个小按钮,上面写着“隐藏”...如果用户单击此链接,他们将不再在网站上的任何地方看到提交。
目前我提交的索引操作很简单:
def index
@submissions = Submission.order("created_at DESC")
end
我的计划是创建一个像这样隐藏的模型:
rails g model hidden user_id:integer submission_id:integer
然后,当用户隐藏某些东西时,会创建一个隐藏模型实例。然后我必须将我的控制器更新为:
def index
@submissions = Submission.order("created_at DESC").includes("hidden").where("hiddens.user_id IS NULL")
end
虽然这显然行不通。
我有一个好的数据库架构吗?为了确保不显示隐藏的提交,我能做的最有效的查询是什么?
谢谢!
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 model schema