web-dev-qa-db-fra.com

Rails Activeadmin - boîte de sélection d'association personnalisée

Dans mon Rails, j'ai le modèle suivant:

class Idea < ActiveRecord::Base
  belongs_to :user
end

class User < ActiveRecord::Base
  has_many :ideas
end

Je crée ActiveAdmin CRUD pour mon modèle Idea avec le formulaire personnalisé qui ressemble à quelque chose qui ressemble à ça:

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

L'exigence est d'avoir le texte personnalisé pour un contenu de l'association membre, c'est-à-dire "#{last_name}, #{first_name}". Est-il possible de personnaliser ma boîte de sélection de membre pour y parvenir?

Toute aide serait appréciée.

38
alexs333

Oui, c'est possible. Je suppose que vous souhaitez utiliser une zone de liste DropDown pour members pour sélectionner un utilisateur dans le modèle User.

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
85
HungryCoder