accepts_nested_attributes_for kullanırken birleştirme modelinin niteliklerini nasıl düzenlersiniz? İç içe geçme formu has_many: ile, birleştirme modelinin niteliklerini nasıl düzenler?
Ben 3 modelleri var: Bağlayıcılardanclass 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
katıldı Konular ve Makaleler Yani konular kumandanın "yeni" eylem makaleyi ...
@topic.articles.build
oluştururken .. .ve ...
<% form_for(@topic) do |topic_form| %>
...fields...
<% topic_form.fields_for :articles do |article_form| %>
...fields...
konular/new.html.erb iç içe geçmiş formu yapmak ... Raylar otomatik bağlayıcı yaratan i harika. Soru için şimdi: Benim Linker modelinde de "yeni konu" formu ile değiştirmek isteyebileceğim nitelikler var. Ancak Rails'in otomatik olarak oluşturduğu linker, topic_id ve article_id dışındaki tüm nitelikler için geçersiz değerlere sahiptir. Diğer linker özniteliklerine "yeni konu" formuna nasıl yer açabilirim ki, onlar nil gelmiyorlar?
: kaydı oluşturma
gibi şimdi de basittir: sunucuya gönderilir form alanı tuşları şuna benzer çünkü, bu Sen sadece yeni bir eylem oluştur, sen kontrolör eylemlerini paylaşıp paylaşamayacağını merak ediyorum. "İlişki" yi "Bağlayıcı" olarak kullanarak "Hesap" üzerinden bir "Kullanıcı" oluşturmak istiyorum ... ama yeni ve oluşturucu eylemlerin neye benzemesi gerektiğini anlayamıyorum. ? – Mohamad
https://robots.thoughtbot.com/accepts-nested-attributes-for-with-has-many-through – zx1986