Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-10 Terurut Topik irfaniYangBaikHati
utk di ruby istilahnya raise exception bukan throw

sebagai warga id-ruby gunakan istilah ruby yg baik dan benar


[Non-text portions of this message have been removed]



Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-09 Terurut Topik Arie Kusuma Atmaja
2008/5/9 d0a98042 <[EMAIL PROTECTED]>:

> Memang desain table dimasalah saya redundant, tapi ini cuma test case
> yang saya coba selesaikan.

wah jangan mau 'mengalah' dulu kalau argumennya belum dikeluarkan
semua ;-) kita harus bisa belajar nih

> Solusinya jadi gini :
>
> class Address < ActiveRecord::Base
>has_one :province
>
> class Province < ActiveRecord::Base
>belongs_to :address

hei yakin nih province belongs to address ? Seharusnya = province
has_many :addresses, nah si address belongs_to :province dong.
bukan begitu? ;-)

Blog http://tinyurl.com/2bjgvn


Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-09 Terurut Topik Arie Kusuma Atmaja
2008/5/9 Leo Laksmana <[EMAIL PROTECTED]>:

> Perhatikan update_attributes! bukan update_attribute, agar throw exception.

+1

ada tulisan menarik dari david black mengenai pengaturan/kebiasaan
Rubyist ketika menggunakan tanda seru di ujung metode tsb. Jadi bila
kita membuat metode (ambil contoh seperti create!, update_attributes!,
dst yg mengandung tanda seru diujung) maka _should_ berperilaku
berjaga throw Exception selain juga "destruktif" dalam artian
mengganti obyek berdasarkan pada result yang diperoleh. Saya pribadi
selalu pakai yang ini dan sangat merekomendasikan untuk serius memakai
yang pakai tanda seru ini baik dalam memakai ataupun membikin kelas
dan obyek sendiri.

Blog http://tinyurl.com/2bjgvn


Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-09 Terurut Topik Arie Kusuma Atmaja
2008/5/9 muhammad nizham <[EMAIL PROTECTED]>:

> Tapi (demi simplicity 'n malesity), kenapa nggak pake ./script generate 
> scaffold ajah?
> kan udah otomatis CRUD nya.

kalau saya pribadi kalau membandingkan cepat-cepatan mana pakai
scaffold atau nggak, justru cenderung jauh lebih cepat saya koding
nggak pakai scaffold.

Di lapangan nyata, saya melihat scaffold ini tersedia hanya sebagai nice spike.

Blog http://tinyurl.com/2bjgvn


Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-09 Terurut Topik Leo Laksmana
2008/5/9 Leo Laksmana <[EMAIL PROTECTED]>:

>
>
> Pake block transaction aja. BTW ini kalo di controller yah?
>
> User.transaction do
>  begin
> @user.update_attributes(params[:user])
> @user.update_attributes(params[:address])
>  end
> end
>
>
Spesifically dalam problem ini:
def update
  User.transaction begin
begin
  @user = User.find(params[:id])
  @user.update_attributes!(params[:user])
  @user.address.update_attributes!(params[:address])
end

 redirect_to :action => 'list'
  end
rescue Exception
  @provinces = Province.find(:all)
  @countries = Country.find(:all)

  render :action => 'edit'
end


Perhatikan update_attributes! bukan update_attribute, agar throw exception.


[Non-text portions of this message have been removed]



Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-09 Terurut Topik Leo Laksmana


--Original Message--
From: adhe kania
To: id-ruby@yahoogroups.com;
Subject: Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 
tabel

@user.update_attributes(params[:user])  => true
@user.address.update_attributes(params[:address])  => false

Pake block transaction aja. BTW ini kalo di controller yah?

User.transaction do
  begin
@user.update_attributes(params[:user])
@user.update_attributes(params[:address])
  end
end

--
http://beol.laksmana.com/
http://twitter.com/beol



Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-09 Terurut Topik adhe kania
Nimbrung nanya boleh yaa..

Kalo untuk kasus kaya gini :

>   if @user.update_attributes(params[:user]) &&
> @user.address.update_attributes(params[:address])
> .
>

@user.update_attributes(params[:user])  => true
@user.address.update_attributes(params[:address])  => false

kan hasilnya 'false'.. Tapi yang 'user'nya jadi udah keupdate yaa di
databasenya??
Kalo maunya kalo address ga keupdate, user juga ga keupdate (begitu juga
sebaliknya) gimana caranya??

Makasi..

-ad-


[Non-text portions of this message have been removed]



[id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-08 Terurut Topik d0a98042
Makasih semuanya! masalah saya selesai :)

def update
@user = User.find(params[:id])
if @user.update_attributes(params[:user]) &&
@user.address.update_attributes(params[:address])   
redirect_to :action => 'list'
else
@provinces = Province.find(:all)
@countries = Country.find(:all)
render :action => 'edit'
end
end



Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-08 Terurut Topik Booking Heaven
@user = User.find(params[ :id])
@user.update_attributes(:first_name=>"Reinhart",:last_name=>"Teapoci")

Nice!!
Reinhart
http://teapoci.blogspot.com


--- On Thu, 5/8/08, muhammad nizham <[EMAIL PROTECTED]> wrote:
From: muhammad nizham <[EMAIL PROTECTED]>
Subject: Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 
tabel
To: id-ruby@yahoogroups.com
Date: Thursday, May 8, 2008, 8:52 PM











imho, untuk update:

@user = User.find(params[ :id])

@user.first_ name = "Nizham"

@user.last_name = "Tanjung"

if @user.save

.



  

Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  
http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ


Re: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-08 Terurut Topik muhammad nizham
imho, untuk update:
@user = User.find(params[:id])
@user.first_name = "Nizham"
@user.last_name = "Tanjung"
if @user.save
.

Tapi (demi simplicity 'n malesity), kenapa nggak pake ./script generate 
scaffold ajah?
kan udah otomatis CRUD nya.



- Original Message 
From: d0a98042 <[EMAIL PROTECTED]>
To: id-ruby@yahoogroups.com
Sent: Friday, May 9, 2008 10:25:12 AM
Subject: [id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 
tabel


Memang desain table dimasalah saya redundant, tapi ini cuma test case
yang saya coba selesaikan.

Masalah saya kemarin mungkin banyakj ditemui sama rails-noob macam saya :)

Solusinya jadi gini :

class Address < ActiveRecord: :Base
has_one :province
belongs_to :user
...

class Province < ActiveRecord: :Base
belongs_to :country
belongs_to :address
...

class User < ActiveRecord: :Base
has_one :address, :dependent => :destroy
...

class UserController < ApplicationControll er
...
def create
@user = User.new(params[ :user])
@address = @user.create_ address(params[ :address] )
if @user.save
redirect_to :action => 'list'
else
render :action => 'new'
end
end
...

sekarang masalahnya kalo mau update gmn? :( tolongin yah




  

Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  
http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ

[Non-text portions of this message have been removed]



[id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-08 Terurut Topik d0a98042
Memang desain table dimasalah saya redundant, tapi ini cuma test case
yang saya coba selesaikan.

Masalah saya kemarin mungkin banyakj ditemui sama rails-noob macam saya :)

Solusinya jadi gini :

class Address < ActiveRecord::Base
has_one :province
belongs_to :user
...

class Province < ActiveRecord::Base
belongs_to :country
belongs_to :address
...

class User < ActiveRecord::Base
has_one :address, :dependent => :destroy
...

class UserController < ApplicationController
...
def create
@user = User.new(params[:user])
@address = @user.create_address(params[:address])
if @user.save
redirect_to :action => 'list'
else
render :action => 'new'
end
end
...

sekarang masalahnya kalo mau update gmn? :( tolongin yah



[id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-08 Terurut Topik Arie Kusuma Atmaja
--- In id-ruby@yahoogroups.com, ANdreas Aditya wrote:

> Kalo boleh sedikit usul gimana kalo tabel users dan addreses digabung jadi 
> satu tabel... 
biar ga redundant..  

Nah menarik ;-)) penggunaan has one dari level data modelling, lalu sampai 
urusan 
desain database, hingga koding (baik dari hanya di model, atau hingga 
controller dan 
view yg berantakan) ini bisa jadi perdebatan panjang. Kalau saya bilang ya 
tergantung, 
jaman dulu ketika rails nggak kayak jaman tu poin eou sekarang sampai2x itu 
model 
diakali agar tidak bisa di mass assignment (alasannya macam2 dari lame sampe 
nyentil 
hacker suka mass assignment segalalah), trus kalo 2.0 bisa di config di 
environment yg 
diinginkan agar bisa ngupdate sesuai field yang diinginkan aja. singkat cerita 
ya tetap 
bergantung sikon, kalo user cuma punya dikit field sih gpp 1 doang, tapi kalo 
sampe 
pouanjang banyak banget ya boleh lah mau bikin pisah2x, trus tapi nanti musti 
pintar-
pintar ngaturnya biar nggak gendut itu refer ada blog post bagus banget dari 
josh susser 
baru2x ini kalo kita sampe punya model file lebih dari 40 ato 50 biji gitu 
musti 
digimanain strateginya dst. 

selamat bersenang-senang sama ruby, semoga sukses. ;-)

> @ndreas

http://www.rubyflow.com



[id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-08 Terurut Topik Arie Kusuma Atmaja
--- In id-ruby@yahoogroups.com, "d0a98042" wrote:

> class Address < ActiveRecord::Base
> has_many :province

ehm ;-) yakin address has_many :province (atau bahkan :provinces) ? saya jadi 
curiga itu 
apa ga seharusnya malah belongs_to :province tuh

> waktu saya coba, row di table user memang bertambah tapi di table
> address tidak

ya terang aja cuma address karena object ybs saja yang Anda raba. Ini bisa 
diakali dengan 
before filter bila Anda senang berurusan dgn resourceful URL dan controller 
atau bisa 
juga Anda akali aja taroh callback before save di model yg Anda perlukan. 
selesai.

> saya dapat error
> The error occurred while evaluating nil.createdari error tersebut saya
> rasa ada kesalah di
> @user.address.create(params[:address])tapi saya ga tau harus gmn lagi.
> mohon pencerahan teman-teman.
> 
> Trims.

http://www.ruby-lang.org/id





[id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-08 Terurut Topik Arie Kusuma Atmaja
--- In id-ruby@yahoogroups.com, "d0a98042" wrote:

> Wah dijawab sendiri deh..saya udah dapat solusinya..buat yang punya
> masalah kaya gini..tanya aja saya
> 
> Trims.


Gimana solusinya? sama codes2nya.

http://www.ruby-lang.org/id



[id-ruby] Re: [Rails] Masalah dengan 1 form yang menambah row di 2 tabel

2008-05-07 Terurut Topik d0a98042
Wah dijawab sendiri deh..saya udah dapat solusinya..buat yang punya
masalah kaya gini..tanya aja saya

Trims.