2016-12-25 3 views
0

私のビューのリンクを介してdeviseレコードを更新しようとしています。Rails:リンクを介してユーザーを更新する

これは私が持ってきたものである:

= link_to "Update", user_registration_path(current_user, user: {abc: true}), method: :put, remote: true 

私は次の問題を取得:#

どのようにすることができるよに呼び出さ

プライベートメソッド `to_param」をこのレコードをリモートで更新しますか?

答えて

2

私はこれをしようとすると、私がやっていることは今あなたのビューであなたがすることができるリンクが

ルート

resources :users do 
    match "update_abc" => "update_abc#users", :as => :update_abc, via: :get 
end 

を好きに解決する方法を作成することです

users_update_abc_path(current_user, abc: true, efg: 21) 

制御装置内にある。

def update_abc 
    user = user.find(params[:id]) 
    if params[:abc].present? 
    user.abc = params[:abc] 
    end 
    .... 
    user.save 
    redirect_to :back 
end 

これが助けてくれることを祈っています:)

+0

複数の属性を扱うメソッドを作成することはできますか? – jonhue

+0

はい、 'user.update_attributes'を使って' user.update_attribute'を変更することができます – MZaragoza

+0

そして値を添付してメソッドに更新したい属性を渡せますか? – jonhue

関連する問題