Ruby on rails ActiveAdmin:在表单中为has\u many/belling\u to关系生成下拉列表

Ruby on rails ActiveAdmin:在表单中为has\u many/belling\u to关系生成下拉列表,ruby-on-rails,ruby-on-rails-3,activeadmin,Ruby On Rails,Ruby On Rails 3,Activeadmin,我有图库和图像模型与多个/属于关系 我的图像管理活动表单如下所示: form do |f| f.inputs "Image Details" do f.input :gallery_id f.input :file end end 我想从下拉列表中选择画廊名称,而不是输入画廊id的编号。默认情况下,此表单如下所示,但我不知道如何手动执行此操作。将您的表单更改为以下内容 form do |f| f.inputs "Image Details" do f.inp

我有
图库
图像
模型与多个/属于关系

我的图像管理活动表单如下所示:

form do |f|
  f.inputs "Image Details" do
    f.input :gallery_id
    f.input :file
  end
end

我想从下拉列表中选择画廊名称,而不是输入画廊id的编号。默认情况下,此表单如下所示,但我不知道如何手动执行此操作。

将您的表单更改为以下内容

form do |f|
  f.inputs "Image Details" do
    f.input :gallery_id, as: :select, collection: Gallery.select(:name).uniq
    f.input :file
  end
end
试试这个

form do |f|
  f.inputs "Image Details" do
    f.input :gallery
    f.input :file
  end
end

我有:name在Gallery中,由deafult创建的active_admin正在做这个下拉列表,而我不必创建新的类方法。知道怎么做吗?好的,我更新了这行:
f.input:gallery\u id,as::select,collection:gallery.select(:name).uniq
。是的,它是。。。我只是添加了类方法,以防您想更好地操作它。你可以只做
f.input:gallery\u id,as::select,collection:gallery.all
我喜欢,如果有人有同样的问题,更新我的答案。