Rails простая форма сгруппирована выберите пользовательский label_method

#ruby-on-rails #ruby-on-rails-5 #simple-form

#ruby-on-rails #ruby-on-rails-5 #простая форма

Вопрос:

Я использую простую форму, и у меня есть сгруппированное поле ввода выбора:

 <%= f.input :subcategory_id, label: false, collection: @subcategories.order(:alternative_name), :label_method => lambda { |item| "#{item.alternative_name}" }, as: :grouped_select, group_method: :child_subcategories, :include_blank => "--Select a category--"%>
  

В у subcategory model меня есть: name: string, alternative_name:string и в у child-subcategory model меня есть name: string, alternative_name:string subcategory_id: integer .

Все работает нормально, child-subcategories группируется с subcategories помощью . И теперь в некоторых частях моего приложения я хотел бы использовать альтернативные имена column вместо имени column . Итак, я попробую это:

 <%= f.input :subcategory_id, label: false, collection: @subcategories.order(:alternative_name), :label_method => lambda { |item| "#{item.alternative_name}" }, as: :grouped_select, group_method: :child_subcategories, :include_blank => "--Select a category--" %>
  

Но с приведенной выше настройкой я получаю только child-subcategory для изменения на alternative_name column . Как я могу изменить оба параметра subcategory and child subcategory , чтобы использовать альтернативное имя column внутри сгруппированного выбора??

Комментарии:

1. Вы опубликовали одну и ту же строку кода дважды, это намеренно?