【问题标题】:Wrong display of user names in ActiveAdmin formsActiveAdmin 表单中的用户名显示错误
【发布时间】:2018-06-12 08:19:12
【问题描述】:

我在我的数据库中创建了一个FreeMeal 选项卡;此选项卡在User 选项卡上有一个外键。当我使用 Active Admin 中的表单创建一个新的 FreeMeal 条目时,我会得到一个我所有用户的列表以供用户输入;但用户的显示方式不正确,如下所示:

编辑:表单会自动填充,因为我有用户的外键。我只是在app/admin/free_meals.rb 中有此表单的以下代码:

ActiveAdmin.register FreeMeal do
  form do |f|
    f.inputs "FreeMeal" do
      f.input :user
      f.input :reason
    end
    f.actions
  end
end

我希望此列表包含我的用户的idfirst_namelast_name

我该怎么做?

【问题讨论】:

  • 您能否发布您当前用于填充该字段的代码?
  • @SRack 我编辑了我的帖子来回答你的问题
  • 你可以这样做f.input :user, :as => :select, :collection => User.all.map{|u| ["#{u.first_name} #{u.last_name}", u.id]}
  • 它完美地完成了这项工作!谢谢@MayurShah
  • 不客气!!

标签: ruby-on-rails ruby-on-rails-5 activeadmin


【解决方案1】:

试试这个:

f.input :user, as: :select, collection: User.all.map{ |u| ["#{u.id}, #{u.first_name} #{u.last_name}", u.id]}, multiple: false

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-05
    • 2013-12-15
    • 2015-12-25
    • 2013-03-22
    • 1970-01-01
    相关资源
    最近更新 更多