Hmm.. user, hobbies, address bukannya 1 entity? Kok disavenya terpisah yah?
Anyway, kalo mau semuanya disimpan dengan benar, kamu butuh yang namanya transaction yang punya property ATOMIC(all or nothing). Kamu bisa liat API transaction: http://api.rubyonrails.org/classes/ActiveRecord/Transactions/ClassMethods.html Kalo masalah pemakaian Transaction di Rails saya kurang begitu tahu. Ini spekulasi contoh saya (tolong di beritahu kalo salah :P) : begin transaction do ... # disini edit2 deh user, hobbies, ama address objectnya end rescue puts "pesan gagal" # langsung return end puts "lacar lancar saja" Felix Halim On 8/30/07, pono_thea <[EMAIL PROTECTED]> wrote: > Hallo semuanya, saya newbie Rails nih, > Ini mungkin logika saya yang ga jalan atau imang bodoh he... > Tentang simpan ke database lebih dari 2 tabel. > > 1. Validasi (di setiap models) > 2. Jika sukses maka simpan ke databse > saya menggunakan > if @user.save and @hobbies.save and @address.save > pesan sukses simpan data > end > Tetapai tidak sesuai dengan yg saya harapakan, saya juga pernah pake > OR, hasilnya tetap. > Masalahnya : > Jika menggunakan AND, error message akan tampil yang @user.save aja, > sedangkan yang lain engga, kecuali klo @user.save sukse > Klo pake OR dia baca dari belakang, > > Jika saya pake > if @user.save > @hobbies.save > end > Gimana cara rollback nya. > Help! > > > > > http://news.gmane.org/gmane.comp.lang.ruby.region.indonesia > > > > > Yahoo! Groups Links > > > >