Bir has_one ilişkisinde accepts_nested_attributes_for ile sorun yaşıyorum.accepts_nested_attributes_for has_one ilişkisi için propertly çalışmaz
Modeller: Satınalma ve Satış. denetleyici olarak
class Purchase < ActiveRecord::Base
has_one :sale, :dependent => :destroy
accepts_nested_attributes_for :sale
end
class Sale < ActiveRecord::Base
belongs_to :purchase
end
/yeni eylem:
@purchase = Purchase.new(
:club_id => @club.id,
:subcategory_id => subcategory.id
)
görünümünde (HAML):
- form_for(@purchase) do |f|
# some fields for purchase
- f.fields_for :sale do |s|
= s.text_field :amount, :size => 6
# and so on
SORUN: Bu aslında benim görünümünde satılık herhangi bir giriş kutularını kılmaz . Satın alma alanları iyi sonuç verir, ancak satış alanları görünmez. Ben kontrolöre bu satırı eklerseniz
: böylece, bunun yerine has_one ait Has_many için dernek türünü değiştirmek eğer
undefined method `build' for nil:NilClass
şeyler daha garip yapmak için:
@purchase.sale.build
bu hatayı alıyorum oluşturma:
class Purchase < ActiveRecord::Base
has_many :sales, :dependent => :destroy
accepts_nested_attributes_for :sales
end
Her şey iyi çalışmaya başlar - satış alanları görünmeye başlar Benim görüşüme göre, @ purchase.sales.build bir hata döndürmez, vb. Elbette, bu bana yardımcı olmuyor, çünkü has_many olması gerekiyor, çünkü has_one değil.
Bu durumda herhangi bir ışık tutabilir mi?
Çok teşekkür ederim has_one hakkında belgelere bakın
has_many
farklı olduğunu !!! – adriandz