В настоящее время я делаю ассоциации вот так:
show do
h3 project.title
panel "Utilisateurs" do
table_for project.roles do
column "Prenom" do |role|
role.user.firstname
end
column "Nom" do |role|
role.user.lastname
end
column "email" do |role|
role.user.email
end
column "Role" do |role|
role.role_name.name
end
end
end
end
# override default form
form do |f|
f.inputs "Details" do # Project's fields
f.input :title
f.input :code
end
f.has_many :roles do |app_f|
app_f.inputs do
# if object has id we can destroy it
if app_f.object.id
app_f.input :_destroy, :as => :boolean, :label => "Supprimer l'utilisateur du projet"
end
app_f.input :user, :include_blank => false, :label_method => :to_label
app_f.input :role_name, :include_blank => false
end
end
f.buttons
end
У меня есть следующие ассоциации:
Project
has_many :roles, :dependent => :destroy
has_many :users, :through => :role
Пользователь
has_many :roles, :dependent => :destroy
has_many :projects, :through => :role
Роль
belongs_to :user
belongs_to :project
belongs_to :role_name
RoleName
has_many :roles
Когда я пытаюсь уничтожить ассоциацию пользователей через мою форму, ничего не происходит, есть идеи, чтобы решить эту проблему?
Или добавить ссылку удаления в мой блок показа?