我的设计登录页面未显示错误的电子邮件/密码消息 如何展示它们?
我做了什么: 我已经生成了设计视图和控制器:
rails generate devise:views
rails generate devise:controllers
我创建了devise_helper.rb
module DeviseHelper
def devise_error_messages1!
resource.errors.full_messages.map { |msg| content_tag(:li, msg) }.join
end
def devise_error_messages2!
resource.errors.full_messages.map { |msg| content_tag(:p, msg) }.join
end
end
我还在views/users/sessions/new.erb
<% flash.each do |name, msg| %>
# New code (allow for flash elements to be arrays)
<% if msg.class == Array %>
<% msg.each do |message| %>
<%= content_tag :div, message, :id => "flash_#{name}" %>
<% end %>
<% else %>
# old code
<%= content_tag :div, msg, :id => "flash_#{name}" %>
<% end %> #don't forget the extra end
<% end %>
接下来我该怎么办? 我读过像this这样的类似问题,但没有帮助
upd:我发现了什么问题,我的答案写在下面
答案 0 :(得分:1)
好吧,我应该把这段代码
<% flash.each do |name, msg| %>
<% if msg.class == Array %>
<% msg.each do |message| %>
<%= content_tag :div, message, :id => "flash_#{name}" %>
<% end %>
<% else %>
<%= content_tag :div, msg, :id => "flash_#{name}" %>
<% end #don't forget the extra end %>
<% end %>
下面:
/home/direwolf/rails_projects/limo/app/views/devise/sessions/new.html.erb