Ruby on rails RubyonRails3.2使用下拉菜单创建表单时出错

Ruby on rails RubyonRails3.2使用下拉菜单创建表单时出错,ruby-on-rails,ruby,ruby-on-rails-3,Ruby On Rails,Ruby,Ruby On Rails 3,我是RubyonRails的新手,在创建表单中使用下拉列表时遇到了问题。这是我收到的错误: nil:NilClass的未定义方法“map” 第8行周围的提取源: 5::message=>必须修复以下字段:, 6::header_tag=>:h3%>->-> 7: 8:'选择子类别…'}%> 9: 10: 11: 这是我的新的.html.erb: 新设备 无效设备!, :message=>必须修复以下字段:, :header_tag=>:h3%>->-> '选择子

我是RubyonRails的新手,在创建表单中使用下拉列表时遇到了问题。这是我收到的错误:

nil:NilClass的未定义方法“map” 第8行周围的提取源:

5::message=>必须修复以下字段:, 6::header_tag=>:h3%>->-> 7: 8:'选择子类别…'}%> 9: 10: 11:

这是我的新的.html.erb:

新设备 无效设备!, :message=>必须修复以下字段:, :header_tag=>:h3%>->-> '选择子类别…'}%> 如果您提交表单时没有从下拉列表中选择值,那么我希望显示验证错误

注意:如果删除该下拉列表,则我的创建表单可以正常工作

如果有人能告诉我我做错了什么,我将不胜感激


谢谢

我将变量@subcategories\u替换为原始select中的\u select,如下所示:

<%= select("SubCategory", "name", options_for_select(SubCategory.all.map{ |p| [p.name, p.id, {:class => p.category_id}] }), {:prompt => 'Select a SubCategory...'}) %>
现在一切都好了