Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/53.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails:如何在活动管理中显示名称而不是ID或地址?_Ruby On Rails_Activeadmin - Fatal编程技术网

Ruby on rails Rails:如何在活动管理中显示名称而不是ID或地址?

Ruby on rails Rails:如何在活动管理中显示名称而不是ID或地址?,ruby-on-rails,activeadmin,Ruby On Rails,Activeadmin,这些天来,我正在使用active_admin来管理我的数据。我有一个音频模型和问题模型。音频有很多问题,问题属于音频。 我使用活动的_admin来创建问题。但在问题的新页面中,有一个下拉列表显示如下内容: #<Audio:0xb4116084> # 有了这个地址,我几乎认不出我想要哪个文件。我想在音频的下拉列表中显示的是音频的标题,它是音频模型的一列。我只想在新页面中更改此列,其他列与默认列保持相同。我该怎么办?谢谢 您可以使用:member\u标签 这里有一个例子 form :

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

#<Audio:0xb4116084>
#

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

您可以使用:member\u标签

这里有一个例子

form :html => { :enctype => "multipart/form-data" }  do |f| 
  f.input :problems,
          :input_html => { :multiple => false, :style => "width: 700px;"},
          :collection => Audio.all,
          :member_label => :audio_name
end

音频类必须实现display\u name方法

这是来自活动管理源的

 # 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 ]
看起来您还没有这样的方法,所以对音频对象调用to_s

 # 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 ]