Select_tag错误:错误消息:类别不能为空

时间:2011-11-08 08:02:39

标签: ruby-on-rails ruby html-select

我想输入选择并将其输入到微博表中。选择来自类别表。它遇到微博类别栏的问题是空白的,所以我怀疑它不能将数据输入到类别的表格微柱中。我搜索所有select,select_tag但无法解决它...有什么我想念的吗?

<%= form_for @micropost do |f| %>
<%= render 'shared/error_messages', :object => f.object %>
<%= f.label :title %><br />
<%=h f.text_field :title %><br />

<%= f.label :content %><br />
<%=h f.text_area :content, :row => 30, :cols=> 30 %><br />

<%  @category = Category.select("category").group("category")
    cat = @category.map{|u| u.category}
%>
    <%= select_tag :category, options_for_select(cat) %>


<%= f.submit "Post" %>

<% end %>

1 个答案:

答案 0 :(得分:0)

如果您检查查询,则会看到参数categorymicropost属性分开发送,因为

<%  
  @category = Category.select("category").group("category")
  cat = @category.map{|u| u.category}
%>
<%= select_tag :category, options_for_select(cat) %>

在名称为category而不是micropost[category]的表单内生成字段以修复它,您可以使用select代替

 <%  
   cat = Category.select( "category" ).group( "category" ).map( &:category )
 %>
 <%= select :micropost, :category, options_for_select( cat ) %>