0

こんにちは、ユーザー リソースの 1 つのフィールドを更新しようとしています。更新するフィールドは「locale」で、文字列型です。

私はフォームを試してみましたが、動作します:

 <%= form_for current_user do |f| %>
       <%= f.select :locale, [['En', 'en'], ['It', 'it']] %>
       <%= f.submit %>
 <% end %>

今、リンクまたはボタンを使用して同じフィールドを更新しようとしています:

 <%= current_user.locale = 'fr'  %>

 <%= button_to "update" ,current_user,method: :patch %>

 <%= button_to "update" ,user_path(current_user),method: :patch %>

しかし、この作品のどれも。

問題はリクエストです。実際、Web サーバーは current_user パラメータを受け取りません。

 {"_method"=>"patch",
 "authenticity_token"=>"7X6QdD4DGxsXaETT86/8Ut4xyuOICaxirs4IjmZl7jY=",
 "locale"=>"en",
 "id"=>"1"}

current_users パラメータはありません。

私はlink_toで試しましたが、問題は同じです:

<%= link_to "update", current_user ,method: :patch %>

何も思いつきません。手伝って頂けますか?

4

1 に答える 1