Ruby on rails 使活动管理员从对象返回值

Ruby on rails 使活动管理员从对象返回值,ruby-on-rails,ruby,activeadmin,Ruby On Rails,Ruby,Activeadmin,我正在尝试使用“属于”关联创建一个过滤器,以获取带有选项的复选框 我试着从文档中使用它 但这将以如下元素列表的形式返回选项 #<AUTHOR:0X007FAA63DF5F60> 我想让它返回作者的名字,它在迁移中的名字是一个字符串 我在表格中也遇到了类似的问题,最后我自己做了一部分 我正在使用rails 4.1.4,通过github的active admin,有不同的方法来解决这个问题 您可以在模型上定义display_name方法,并返回作者姓名,或者执行以下操作: filter

我正在尝试使用“属于”关联创建一个过滤器,以获取带有选项的复选框

我试着从文档中使用它

但这将以如下元素列表的形式返回选项

#<AUTHOR:0X007FAA63DF5F60>
我想让它返回作者的名字,它在迁移中的名字是一个字符串

我在表格中也遇到了类似的问题,最后我自己做了一部分


我正在使用rails 4.1.4,通过github的active admin,有不同的方法来解决这个问题

您可以在模型上定义display_name方法,并返回作者姓名,或者执行以下操作:

filter :author, as: :check_boxes, collection: proc { Author.all.map{|a| [a.name, a.id] } }
或者这个:

filter :author, as: :check_boxes, collection: proc { Author.pluck(a.name, a.id) }

您是否尝试过Author。Pulk:name这将返回一个包含所有作者姓名的数组。谢谢,要使筛选器正常工作,我需要使用Author。Pulk:navn,:id很高兴它对您有效。
filter :author, as: :check_boxes, collection: proc { Author.pluck(a.name, a.id) }