我有RailsAdmin运行我的Rails 3应用程序,它有两个模型 - 销售和商品。两者之间存在HABTM关系。在RailsAdmin中,当添加或编辑销售时,以通常的方式显示可用商品的列表。但是,仅显示商品的“名称”列。我有另一个列,其值必须包含在列表中才有意义。如何将其添加到RailsAdmin界面?
我理解RailsAdmin docs说字段声明可以访问包含当前记录实例的绑定哈希 - 但我找不到任何如何实现它的示例。谢谢你的帮助。
答案 0 :(得分:5)
我建议您使用自定义对象标签方法。您的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 / views / rails_admin / main /中的视图。快速grep显示在这些视图中可以访问bindings [:object],但是IIRC还有一些其他可以访问的绑定变量。
答案 1 :(得分:5)
您至少可以使用以下对象:
bindings[:object] # the actual object
bindings[:view] # you can access view helpers here
bindings[:controller] # you can access the controller
在这种情况下,您需要的是bindings[:object]