我有一个帖子/类别的典型关系(帖子有很多类别,所以类别有很多帖子)。我是使用 Rails 4 的新手,并试图实现一个simple view
我可以检查哪些类别与帖子主题匹配的地方。
帖子控制器
...
params[:post][:categories].each do |category_id|
@post.categories << Category.find(category_id)
end
...
_form.html.erb
<div class="field">
<%= f.label :categories %>
<%= f.collection_check_boxes :categories, Simpleblog::Category.all, :id, :title %>
</div>
当我编辑帖子A
时,检查类别1
并保存,它可以工作!但是当我再次编辑它时,与该类别对应的1
复选框没有被选中!我知道它已经保存在数据库中。所以当我再次检查类别时,它会重复记录。结论:我1
的帖子分配了两个类别A
。两个问题?
1)我如何制作check_boxesview
以保留已分配给帖子的类别的“检查”?
2)如何防止类别和帖子关系之间的重复?
谢谢