Como você edita os atributos de um modelo de junção ao usar aceita_nested_attributes_for?
Eu tenho 3 modelos: tópicos e artigos unidos por 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
Então, quando eu construo o artigo na "nova" ação do controlador de tópicos ...
@topic.articles.build
... e crie o formulário aninhado em topics / new.html.erb ...
<% form_for(@topic) do |topic_form| %>
...fields...
<% topic_form.fields_for :articles do |article_form| %>
...fields...
... O Rails cria automaticamente o linker, o que é ótimo. Agora, minha pergunta: Meu modelo de vinculador também tem atributos que desejo poder alterar por meio do formulário "novo tópico". Mas o linker que o Rails cria automaticamente tem valores nulos para todos os seus atributos, exceto topic_id e article_id. Como posso colocar campos para esses outros atributos de vinculador no formulário "novo tópico" para que eles não saiam nulo?
User
por meio de umAccount
usando umRelationship
comolinker
... mas não consigo descobrir como as ações new e create devem ser ... você se importaria?