Comment modifier les attributs d'un modèle de jointure lorsque l'on utilise accepts_nested_attributes_for ?
Je possède 3 modèles : Sujets et articles rejoints par les Linkers
class Topic < ActiveRecord::Base
has_many :linkers
has_many :articles, :through => :linkers, :foreign_key => :article_id
accepts_nested_attributes_for :articles
end
class Article < ActiveRecord::Base
has_many :linkers
has_many :topics, :through => :linkers, :foreign_key => :topic_id
end
class Linker < ActiveRecord::Base
#this is the join model, has extra attributes like "relevance"
belongs_to :topic
belongs_to :article
end
Ainsi, lorsque je crée l'article dans l'action "new" du contrôleur des sujets...
@topic.articles.build
...et faire le formulaire imbriqué dans topics/new.html.erb...
<% form_for(@topic) do |topic_form| %>
...fields...
<% topic_form.fields_for :articles do |article_form| %>
...fields...
...Rails crée automatiquement le linker, ce qui est génial. Maintenant, ma question : Mon modèle Linker possède également des attributs que je veux pouvoir modifier via le formulaire "new topic". Mais le linker que Rails crée automatiquement a des valeurs nulles pour tous ses attributs, sauf topic_id et article_id. Comment puis-je placer les champs pour les autres attributs du linker dans le formulaire "new topic" afin qu'ils ne soient pas nuls ?