Html 错误:禁止保存此用户:
我一直有一个问题,我似乎无法解决 3个错误禁止保存此用户:Html 错误:禁止保存此用户:,html,ruby-on-rails,ruby,forms,devise,Html,Ruby On Rails,Ruby,Forms,Devise,我一直有一个问题,我似乎无法解决 3个错误禁止保存此用户: 电子邮件不能为空 密码确认与密码不匹配 密码太短(最少8个字符) 我不知道如何摆脱禁止保存此用户的3错误: 我只想显示项目符号中的错误。你有什么想法来配合这个吗?顺便说一下,我用的是Desive 设计错误消息来自对设计错误消息的调用,它位于中的帮助程序中。我通过运行bundle open designe并查看视图发现了这一点。表单视图调用该助手方法 您可以将此代码放在初始化器中以覆盖它: module DeviseHelper
- 电子邮件不能为空
- 密码确认与密码不匹配
- 密码太短(最少8个字符)
3错误:
我只想显示项目符号中的错误。你有什么想法来配合这个吗?顺便说一下,我用的是Desive 设计错误消息来自对
设计错误消息的调用代码>,它位于中的帮助程序中。我通过运行bundle open designe
并查看视图发现了这一点。表单视图调用该助手方法
您可以将此代码放在初始化器中以覆盖它:
module DeviseHelper
def devise_error_messages!
return "" if resource.errors.empty?
messages = resource.errors.full_messages.map { |msg| content_tag(:li, msg) }.join
html = <<-HTML
<div id="error_explanation">
<ul>#{messages}</ul>
</div>
HTML
html.html_safe
end
end
我不知道如何摆脱这个用户禁止的3个错误
免于得救
我们覆盖design
helper,使我们能够最终控制希望显示的错误。它向您展示了如何实现这一点
--
助手
根据所附资源Buck Doyle
的回答,您可能希望执行以下操作:
#app/helpers/devise_helper.rb
module DeviseHelper
def devise_error_messages!
resource.errors.full_messages.map { |msg| content_tag(:li, msg) }.join
end
end
这将允许您更改设计视图
,以包含设计错误消息代码>方法:
#app/views/devise/registrations/new.html.erb
<%= devise_error_messages! %>
#app/views/designe/registrations/new.html.erb
老实说,最便宜的方法就是在CSS中添加以下内容(虽然从技术上讲不是删除标题):
#error_explanation h2 {
display: none;
}
你使用的是什么版本的Rails?请不要发布文本截图。把它打出来,这样我们大家都可以读。帖子里有文字。主要问题在@meagar的帖子中陈述。通过OPs帖子,它看起来是最新的@PaulMy原创版本,只有模块ApplicationHelper
和end
。这正常吗?是的。设备帮助器
位于设备宝石中。您不会在应用程序结构中看到它。如果您想查看gem中包含的文件,可以使用bundle open designe
命令;您可以在那里的应用程序/助手中找到它。但我不建议编辑它,只是在其他地方覆盖它;您是如何执行覆盖的?我想你必须把它放在developeHelper
模块中,否则它不会真正覆盖原来的。运气不好。我已经能够让它与Rich Pecks post一起工作了一点。但是我收到了电子邮件可以';密码不能为空';不要空白 电子邮件
@user302975:我不能确定,但我不认为把它放在ApplicationHelper
中会真正覆盖designe helper。这就是为什么我建议将它放在一个初始化器中,并使用名称develiehHelper
,这肯定会覆盖现有的方法。所以将它重命名为develiehHelper
@Buckdoyle我没有一个设备助手
只有一个应用程序助手
和一个家庭助手
@buckdoyle在这里添加一个新文件:config/initializers/designe\u helper\u override.rb
并将模块设备助手
代码放入我的答案中;密码不能为空';不要空白电子邮件
有什么想法吗?
#error_explanation h2 {
display: none;
}