关联表的 Rails 管理员自定义列



我正在使用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

自定义列始终位于最后。有没有办法把柱子放在任何位置?自定义列属于用户模型。

我为此做了一个解决方法。在单个列中包含多个用户列。

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

这样,我就可以按名称和电子邮件进行搜索,并在与管理员中的用户模型相同的位置进行搜索。

最新更新