【问题标题】:non-customized devise reset password button is doing absolutely nothing非定制的设备重置密码按钮完全没有任何作用
【发布时间】:2015-05-08 22:55:42
【问题描述】:

我已经设计了登录和注销工作,已经使用了一段时间了。

我没有将设计的密码控制器或密码视图复制到我的应用程序中,只是使用开箱即用的密码/新表单。输入有效用户的电子邮件后,当我单击“向我发送密码重置说明”按钮时,没有任何反应。我检查了我的日志,点击后没有任何活动。我已经阅读了设计文档,但似乎没有任何特殊的设置步骤可以使重置密码功能正常工作。有什么问题?

有关更多信息,我已关注devise's instructions,要求管理员在登录前激活帐户。我已将注册和会话控制器拉入我的应用程序以进行最少的自定义,但这似乎并不重要。我正在使用 rails 4.2.0.rc2 并设计 3.4.1

这是表单的渲染 html:

  <h2>Forgot your password?</h2>

<form class="new_user" id="new_user" action="/users/password" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="&#x2713;" /><input type="hidden" name="authenticity_token" value="AE+YY8afzRavKa1ziDFZ5Z6FqFYQF1vI+zvc701JGqfg5k+ztvMIKHDX4Wdfr+KOp9yEcRBTsk4jfonpzUeP5w==" />
  

  <div class="field">
    <label for="user_email">Email</label><br />
    <input autofocus="autofocus" type="email" value="" name="user[email]" id="user_email" />
  </div>

  <div class="actions">
    <input type="submit" name="commit" value="Send me reset password instructions" />
  </div>
</form>

【问题讨论】:

  • 您在开发控制台中看到任何电子邮件活动吗?你在使用“Ajax”吗?
  • 你能给我们展示一些你渲染的 HTML 吗?
  • 我正在查看 Rails 服务器日志(调试级别)并且什么都没有,这意味着当我单击按钮时没有任何活动的日志。 (顺便说一句,我确实有电子邮件在其他地方工作,通过 ActionMailer。)我将在一分钟内粘贴呈现的 HTML。
  • @errata 关于使用 ajax 的问题有所帮助。我没有构建前端,也不熟悉ajax。只是为了看看,我评论了页眉和页脚,现在表单正在工作。所以我猜有一些ajax类型冲突,现在调查一下。

标签: ruby-on-rails devise


【解决方案1】:

除非选中服务条款字段,否则您的 javascript 会阻止提交表单。

来自您的 application.js 文件:

if $('#user_terms').is(':checked')
else
  e.preventDefault()
  $('#terms-of-service-error').modal()
return

【讨论】:

    猜你喜欢
    • 2017-08-11
    • 1970-01-01
    • 1970-01-01
    • 2019-03-08
    • 1970-01-01
    • 1970-01-01
    • 2020-11-11
    • 2013-03-23
    • 1970-01-01
    相关资源
    最近更新 更多