Saya belum dapat menemukan dokumentasi apa pun tentang metode .build di Rails (saat ini saya menggunakan 2.0.2).
Melalui eksperimen, tampaknya Anda dapat menggunakan metode build untuk menambahkan catatan ke dalam suatu has_many
hubungan sebelum salah satu catatan disimpan.
Sebagai contoh:
class Dog < ActiveRecord::Base
has_many :tags
belongs_to :person
end
class Person < ActiveRecord::Base
has_many :dogs
end
# rails c
d = Dog.new
d.tags.build(:number => "123456")
d.save # => true
Ini akan menyimpan anjing dan tag dengan kunci asing dengan benar. Ini sepertinya tidak berhasil dalam suatu belongs_to
hubungan.
d = Dog.new
d.person.build # => nil object on nil.build
Saya juga sudah mencoba
d = Dog.new
d.person = Person.new
d.save # => true
Kunci asing masuk Dog
tidak diatur dalam kasus ini karena fakta bahwa pada saat disimpan, orang baru tidak memiliki id karena belum disimpan.
Pertanyaan saya adalah:
Bagaimana cara membangun agar Rails cukup pintar untuk mengetahui cara menyimpan catatan dalam urutan yang benar?
Bagaimana saya bisa melakukan hal yang sama dalam suatu
belongs_to
hubungan?Di mana saya dapat menemukan dokumentasi tentang metode ini?
Terima kasih
belongs_to
" dan "Metode Ditambahkan olehhas_one
" . Lebih banyak dokumentasi teknis dapat ditemukan di dokumen API:belongs_to
andhas_one
.