Rails:显示包含类别和子类别的下拉菜单

时间:2013-06-07 08:59:16

标签: drop-down-menu ruby-on-rails-3.2

我有一个表单,用户可以选择产品的子类别。我有一个下拉列表,显示所有子类别可供选择。这是产品表单视图中的代码:

    <%= collection_select :sub_category_id, @sub_categories, :id, :sub_category, {:include_blank => 'Select a Sub Category'} %>

在产品控制器中:

     @sub_categories = SubCategory.all

在同一下拉列表中,我想显示子类别的类别。我不想为类别创建新的下拉列表。

列表如:

   City (state)

其中city是子类别,state是category。

SubCategory模型与Category:

有以下关系
     belongs_to :category

任何人都可以帮助我吗?怎么做到呢?

1 个答案:

答案 0 :(得分:0)

您可以尝试执行类似

的操作
<% f.select(:sub_category_id, SubCategory.all.collect{|sub| [sub.category,sub.id]}.sort 
{|a, b| a[0] <=> b[0]}, {:prompt => "Select Sub-Category"}

如果这是你所追求的,我可能不会100%正确。