我正在使用Ruby 2.3,Rails 4.2.7和rails-admin 1.2.0
我在列表中显示关联列时遇到问题。
Class Address < ActiveRecord::Base
belongs_to :user
# Have to write custom because Rails Admin doesn't allow to add multiple columns from the association table.
def custom_column
self.user.email
end
rails_admin do
list do
include_fields # it only works on the current model
field :id
field :custom_column
field :user
field :address
end
end
end
自定义列始终位于最后一列。有什么办法可以将列放在任何位置?自定义列属于用户模型。
答案 0 :(得分:0)
我为此做了一个解决方法。在一列中包含用户的多列。
field :user do
column_width 400
queryable true
searchable [:name, :email]
pretty_value do
path = bindings[:view].show_path(model_name: 'User', id: bindings[:object].user.id)
bindings[:view].tag(:a, href: path) << "#{value.name} - (#{value.email})"
end
end
通过这种方式,我既可以通过姓名,电子邮件进行搜索,又可以在与管理员模型中的用户模型相同的位置进行搜索。