簡體   English   中英

Rails 4和Devise 4:更新個人資料后,將用戶保持在當前頁面上

[英]Rails 4 & Devise 4: Keep user on current page after updating profile

我有一個用戶模型,並且希望有不同的頁面來編輯他們的信息,以便使我在edit.html.erb上沒有所有edit.html.erb

到目前為止,我已經為page_content.html.erbdonation_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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM