2010-12-05 8 views
4

これは、それは私がAPIドキュメントとRailsのソースコードを含むこのどこかについての情報を見つけることができなかったばかげていることをとても簡単です:Rails関連の更新メソッドとは何ですか?

私が持っている:belongs_toの関連付けをし、私はあなたが呼び出す通常のモデルメソッドを理解するために来ていますコントローラー内にアソシエーションがないときは、行うときと少し異なります。アップデートを使用して

@user = current_user 
@building = @user.buildings.find(params[:id]) 

respond_to do |format| 
    if @user.buildings.update(params[:building]) 
# et cetera 

@user = current_user 
@building = Building.new(params[:building]) 

respond_to do |format| 
    if @user.buildings.create(params[:building]) 
# et cetera 

が、私は更新がどのように機能するかについてのドキュメントを見つけることができません:たとえば、私は私の協会が作成したコントローラのアクションのために細かい作業

を持っていますメソッドは、エラー "引数の数が間違っている(1の2)"を返し、私はどの引数が送られるはずなのか分かりません。

答えて

10

使用update_attributes

@user = current_user 
@building = @user.buildings.find(params[:id]) 

respond_to do |format| 
    if @building.update_attributes(params[:building]) 
    #... 
    end 
end 
+0

それです!私はすでにそれを試しましたが、間違ったオブジェクトを使っていました。ありがとう。 – user478798

+0

@ user478798ようこそ。 :-) –

+0

注: 'update_attributes'はオブジェクトに対してバリデーションを実行しません。 – agbodike

関連する問題