使用过rails_admin gem的人可能已经注意到导航侧边栏中的标签总是复数形式。
是否有办法防止特定模型出现这种情况?
在README:
您可能想要更改navigation_label的名称。这可以可以通过父类的'navigation_label'方法轻松实现模型。
添加到前面的例子:
class League < ActiveRecord::Base
rails_admin do
navigation_label 'League related'
end
end
那解决你的问题了吗?
您可以在rails管理初始化器中传入label_plural
参数
config.model Thing do
label_plural "Thing"
end
我设法解决了这个问题。方法如下:
- 创建视图/rails_admin/主/_navigation.html.haml
- 从rails_admin gem源代码中的等效文件中复制并粘贴代码
- 将
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_复数非常相似,如您所见:
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块