在Railsadmin上的列表中添加额外的列值
-
26-10-2019 - |
题
我有Railsadmin为Rails 3应用程序运行,该应用程序有两种型号 - 销售和商品。两者之间存在HABTM关系。在Railsadmin中,当添加或编辑销售时,以通常的方式显示了可用的商品列表。但是,仅显示商品的“名称”列。我还有另一列的列,其值需要包括列表以使其有意义。如何将其添加到Railsadmin界面?
我了解Railsadmin 文档 假设字段声明可以访问包含当前记录实例的绑定哈希(Hash) - 但我找不到任何实现此功能的示例。谢谢你的帮助。
解决方案
我建议您对此使用自定义对象标签方法。您的Railsadmin配置可能看起来像这样:
config.model Merchandise do
object_label_method
:custom_label
end
end
您的ActivereCord模型将包含用于实例标签的方法:
class Merchandise < ActieRecord::Base
def custom_label
"#{self.label} #{self.another_column} #{self.another_column2}"
end
end
这不会回答您有关可用绑定变量的问题,但我希望它可以解决根部问题。如果您想查看可以在自定义字段视图中访问哪些变量,则可以浏览〜/rails_admin/app/app/views/rails_admin/main///main///main/中的视图。快速的GREP显示绑定[:对象]在这些视图中可以访问,但是IIRC,还有一些其他绑定变量可访问。
其他提示
您至少有以下对象可用:
bindings[:object] # the actual object
bindings[:view] # you can access view helpers here
bindings[:controller] # you can access the controller
在这种情况下您需要的是 bindings[:object]
不隶属于 StackOverflow