选择顺序 Rails 记录,或首先显示" ALL "



我正在寻找一种方法来选择grouped_collection_select的第一条记录,或者在第一个选择中显示" ALL"。

<%= f.collection_select :marque_id, Marque.all, :id, :name_upper, :include_blank => 'ALL', :prompt => 'Mark' %>         
     <%= f.grouped_collection_select :modele_id, Marque.all, :modeles, :name_upper, :id, :name_upper, :prompt => 'Model', :include_blank => 'ALL' %> 

":include_blank => 'ALL' "对collection_select工作正常,但对grouped_collection_select则不行。

对于grouped_collection_select,它首先只显示一个空白字段。

我试图在数据库中放

一个空白记录,或者用很多符号在数据库中放"ALL",比如:"#ALL #"......不适用于数字(147、156、159 [...]、# 全部 #,...)

编辑:

或者,也许我可以在每个子类别中添加一个字段,并定义"第一个"?但我想按"名称 ASC"保持所有内容的排序。

我已经把

    default_scope order('name ASC')

在我的模型中

我找到了如何做我想做的事。

我只需要添加

$('#search_modele_id').preprend('<option value="" selected="selected">ALL</option>');

到我的jQuery代码中,并将值设置为" BLANK"(在我的情况下非常重要)。

并把

:include_blank => true

而不是

:include_blank => 'ALL'

在搜索表单中

问题解决了。

无论如何,谢谢!

相关内容

最新更新