Как я не могу, чтобы rails_admin gem создавал множественные метки на боковой панели навигации? - PullRequest
3 голосов
/ 16 августа 2011

Любой, кто использовал гем rails_admin, мог заметить, что метки на боковой панели навигации всегда множественные.

Есть ли способ предотвратить это для определенных моделей?

Ответы [ 3 ]

5 голосов
/ 16 августа 2011

В README:

Возможно, вы захотите изменить имя навигационной метки.Это может быть легко достигнуто с помощью метода 'navigation_label' родительской модели.

Добавлено к предыдущему примеру:

class League < ActiveRecord::Base
  rails_admin do
    navigation_label 'League related'   
  end 
end

Устраняет ли это вашу проблему?

4 голосов
/ 03 января 2012

Вы можете передать параметр label_plural в инициализаторе администратора rails

config.model Thing do
  label_plural "Thing"
end
1 голос
/ 16 августа 2011

Мне удалось это исправить.Вот как это делается:

  • Создание views / rails_admin / main / _navigation.html.haml
  • Копирование и вставка кода из эквивалентного файла в исходный код гема rails_admin
  • замените все экземпляры label_plural на label

Таким образом, изменится следующее:

= link_to(model.label_plural, list_path(:model_name => model.abstract_model.to_param))

на:

= link_to(model.label, list_path(:model_name => model.abstract_model.to_param))

Это нормальносделать так, как label и label_plural очень похожи, как вы можете видеть:

register_instance_option(:label) do
  @label ||= abstract_model.model.model_name.human(:default => abstract_model.model.model_name.demodulize.underscore.humanize)
end

register_instance_option(:label_plural) do
  @label_plural ||= abstract_model.model.model_name.human(:count => 2, :default => label.pluralize)
end

Теперь, если я хочу использовать множественный ярлык, я просто указываю его в блоке rails_admin моей модели.

...