[英]Rails 4 & Devise 4: Keep user on current page after updating profile
我有一個用戶模型,並且希望有不同的頁面來編輯他們的信息,以便使我在edit.html.erb
上沒有所有edit.html.erb
到目前為止,我已經為page_content.html.erb
和donation_options.html.erb
創建了視圖,上面都有我的表單。 兩者均按預期工作並成功更新了我的用戶,但是在提交表單后,我被重定向到用戶根目錄,即show.html.erb
。 我想進行設置,以便用戶在更新其個人資料后停留在當前頁面上。 我不確定是否需要編輯UsersController
,創建新控制器或采用其他方法。
這是我的表格的一個例子:
<%= form_for @user do |f| %>
<!--Some inputs-->
<div class="actions">
<%= f.submit 'Update', :class => "btn btn-primary" %>
<!--After submitting, I'm taken to /users/:id/. I'd like to stay on /users/:id/current_view-->
</div>
<% end %>
如果您已經有一個UsersController
,則應進行與此設置類似的設置:
Class UsersController < ApplicationController
def update
@user = User.find(params[:id])
if @user.update(user_params)
redirect_to your_path_here
end
end
end
我不確定您的UsersController
到底是什么樣子,但這應該可以給您一個想法。 更新用戶后,將redirect_to
與您希望用戶發送到的路徑一起使用。 如果要重定向回當前頁面,也可以使用redirect_to :back
。
請參閱此現有的SO帖子 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.