【发布时间】:2016-04-04 17:10:28
【问题描述】:
试图制作一个通用的部分来显示错误消息。将f.object 传递给它。但是object 在我的部分内部是nil。
new.html.haml
= form_for :post, url: posts_path do |f|
= render 'shared/error_messages', object: f.object
%p
=f.label :title
=f.text_field :title
%p
=f.label :body
=f.text_area :body
=f.submit "Create"
shared/_error_messages.html.haml
- if object.errors.any?
#error_explanation
.alert.alert-danger
You made
= pluralize(object.errors.count, "mistake")
Please fix:
%ul
= object.errors.full_messages.each do |msg|
%li= msg
在 ERB 中,这是显而易见的。一切都正确缩进(我希望)但是如果我通过 local_assigns 检查内部部分,我会得到{:object=>nil,:error_messages=>nil}
Rails 4.2.5、HAML 4.0.7
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4 haml