我用设计创建了一个用户。确认说明会发送到新用户的电子邮件中。点击'确认我的帐户'链接,将打开一个新页面,并显示以下错误:
NoMethodError at /users/confirmation
undefined method `devise_error_messages!' for #<#<Class:0x007fe016609818>:0x007fe0164c88f0>
错误发生在app/views/devise/confirmations/new.html.erb
第4行:
<%= form_for(resource, as: resource_name, url: confirmation_path(resource_name), html: { method: :post }) do |f| %>
<%= devise_error_messages! %>
您可能会建议删除该行。但这不是我的代码。这是Devise gem文件之一。我不能也不应该编辑宝石本身。有些事情一定是错的。这是怎么回事?
答案 0 :(得分:1)
我已将文件devise_helper.rb
添加到我自己的项目中。此文件已覆盖devise_helper.rb
处的devise-4.2.0/app/helpers
。该文件定义了方法devise_error_messages!
。我创建的文件没有。因此,错误。