簡體   English   中英

在Rails應用程序中以引導模式設計忘記密碼

[英]Devise Forgot password in bootstrap modal in a Rails Application

我正在Rails 4中構建一個小型應用程序。我正在使用devise進行身份驗證。

我想在彈出/彈出窗口中設置登錄。 我已經使用引導模態來實現這一點。 我已經通過此鏈接成功實現了這一目標。

https://github.com/plataformatec/devise/wiki/How-To:-Display-a-custom-sign_in-form-anywhere-in-your-app

以下是我的代碼

application.html

    <ul class="nav navbar-right">
      <% if user_signed_in? %>
         <div id="loggedinuser"> <%= current_user.email %>. Not you? </div>
         <%= link_to "Sign out", destroy_user_session_path, :method => :delete %>
      <% else %>
         <li><a href="" data-toggle="modal" data-target="#myModal" class="btn btn-small btn-info">Log IN</a></li>
      <% end %>
    </ul>

<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<%= form_for(:user, :url => session_path(:user)) do |f| %>
      <%= f.email_field :email, class: 'form-control', placeholder: 'Enter email' %>
      <%= f.password_field :password, class: 'form-control', placeholder: 'Enter password' %>
      <%= f.submit 'Sign in', class: 'btn btn-block btn-info' %>
 <% end %>
 <%= link_to content_tag(:small, 'Forgot your password?'), new_password_path(:user) %> 
</div>

問題出在忘記密碼鏈接。 我需要密碼更改路徑才能退出模式彈出窗口。

有什么辦法可以以相同的方式打開它來替換內容?

我之前曾在這里看到過同樣的問題,但沒有人回答。

https://stackoverflow.com/questions/24878494/devise-forgot-password-popover-modal

我希望這次有人可以幫助我。

任何幫助深表感謝。

創建一個按鈕或表單,該按鈕或表單會在您的控制器中執行自定義操作(例如forgot_password )。

def forgot_password
  respond_to do |format|
    format.js
  end
end

然后在該控制器的視圖文件夾中創建一個名為forgot_password.js.erb的js視圖模板。 在模板中放入以下內容:

$("#your-modal-body-id").html("<%= escape_javascript (render partial: 'forgot_password') %>");

確保為模態主體提供與js視圖模板中一樣的匹配ID。

根據需要創建您的forgot_password部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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