2013-03-19 37 views
34

在我的Rails應用程序,我有以下型號:Rails的Activeadmin - 自定義的關聯選擇框

class Idea < ActiveRecord::Base 
    belongs_to :user 
end 

class User < ActiveRecord::Base 
    has_many :ideas 
end 

我創造ActiveAdmin CRUD我Idea模型,看起來像,看起來像自定義窗體:

form do |f| 
    f.inputs do 
    f.input :member 
    f.input :description 
    end 
end 

的要求是有自定義文本爲成員協會的內容,即"#{last_name}, #{first_name}"。是否可以自定義我的成員選擇框來實現它?

任何幫助將不勝感激。

回答

71

是的,那是可能的。我假設你想使用DropDown列表框membersUser模型中選擇一個用戶。

form do |f| 
    f.inputs do 
    f.input :user_id, :label => 'Member', :as => :select, :collection => User.all.map{|u| ["#{u.last_name}, #{u.first_name}", u.id]} 
    f.input :description 
    end 
end 
+2

這種類型的集合中的地圖不適合我... activeadmin總是顯示我的u.name,而不是像我設置的u.cod ...我的集合:User.all.map {| U | [u.cod,u.id]} – squiter 2014-03-28 12:46:20