Как вы редактируете атрибуты модели соединения при использовании accept_nested_attributes_for?
У меня есть 3 модели: темы и статьи, к которым присоединились линкеры
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
Поэтому, когда я создаю статью в «новом» действии контроллера тем ...
@topic.articles.build
... и сделайте вложенную форму в themes / new.html.erb ...
<% form_for(@topic) do |topic_form| %>
...fields...
<% topic_form.fields_for :articles do |article_form| %>
...fields...
... Rails автоматически создает компоновщик, и это здорово. Теперь у меня вопрос: у моей модели компоновщика также есть атрибуты, которые я хочу изменить с помощью формы «новая тема». Но компоновщик, который Rails автоматически создает, имеет нулевые значения для всех своих атрибутов, кроме topic_id и article_id. Как я могу поместить поля для этих других атрибутов компоновщика в форму «новая тема», чтобы они не были нулевыми?
User
сквозной,Account
используяRelationship
в качествеlinker
... но я не могу понять, как должны выглядеть действия new и create ... не возражаете?