Rails表单选择NULL(无选择)支持

Muf*_*lix 2 ruby-on-rails-3

如何在表单选择中添加NULL选项?我有一张桌子:

categories
id
category_id
name
Run Code Online (Sandbox Code Playgroud)

如果我正在创建一个新类别,我希望能够选择该NO_CATEGORY选项(NULL值和id).

我的观点代码:

<%= f.collection_select :supercategory_id, Category.all, :id , :name %>
Run Code Online (Sandbox Code Playgroud)

还有,这是一个好主意?在数据库中有一些预定义的ROOT类别不是更好吗?谢谢.

Pet*_* P. 6

尝试:

<%= f.collection_select :supercategory_id, Category.all, :id , :name, :include_blank => true %>
Run Code Online (Sandbox Code Playgroud)

没关系就可以了.只需让你的模型逻辑知道它应该创建一个新的类别并分配它而不是从select中进行质量分配.可能是在before_validation方法中发生的事情