Rails:如何在active_admin中的has_many关系中显示名称而不是ID或地址?

kgt*_*ong 2 ruby-on-rails activeadmin

这些天我使用active_admin来管理我的数据.我有一个音频模型和问题模型.音频有很多问题,问题属于音频.我使用active_admin来创建问题.但是在问题的新页面中,有一个下拉列表显示的内容如下:

#<Audio:0xb4116084>
Run Code Online (Sandbox Code Playgroud)

有了这个地址,我几乎无法识别出我想要的文件.我想在Audio的下拉列表中显示的是Audio的标题,它是Audio模型的一列.我只想在新页面中更改此列,其他列保持与默认值相同.我该怎么办?谢谢!

Fiv*_*ell 8

音频类必须实现display_name方法

防爆

class Audio
   def display_name
     title
   end
end
Run Code Online (Sandbox Code Playgroud)

这是来自活跃的管理员来源

 # Active Admin makes educated guesses when displaying objects, this is
    # the list of methods it tries calling in order
    setting :display_name_methods, [ :display_name,
                                      :full_name,
                                      :name,
                                      :username,
                                      :login,
                                      :title,
                                      :email,
                                      :to_s ]
Run Code Online (Sandbox Code Playgroud)

看起来你没有这样的方法所以为音频对象调用to_s