I have this partial:
<% if flash.any? %>
<% flash.each do |type, message| %>
<%= render 'shared/flash_message', locals: { type: type, message: message } %>
<% end %>
<% end %>
which is including this partial:
<div class="message-box message-box--<%= type %>">
<a class="close" data-dismiss="alert">×</a>
<%= message %>
</div>
When running that I get:
undefined local variable or method `type' for
<#:0x007fe510aa3c80>
It's pointing to an error where I am outputting <%= type %> Anyone know why?
You have to specify that you are rendering a partial to pass in the local variables.
So change
<%= render 'shared/flash_message', locals: { type: type, message: message } %>
to
<%= render partial: 'shared/flash_message', locals: { type: type, message: message } %>.
http://guides.rubyonrails.org/layouts_and_rendering.html#passing-local-variables
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With