Ruby on rails 带有可选变量的Rails部分不工作
我不确定这里发生了什么,但下面在渲染时抛出了一个错误:Ruby on rails 带有可选变量的Rails部分不工作,ruby-on-rails,partial-views,Ruby On Rails,Partial Views,我不确定这里发生了什么,但下面在渲染时抛出了一个错误: <%= render 'clients/clients_table', special: true %> 在我看来,我有: <% if defined?(:special) %> <p><%= special %></p> <!-- line with error --> <% else %> <p>No</p>
<%= render 'clients/clients_table', special: true %>
在我看来,我有:
<% if defined?(:special) %>
<p><%= special %></p> <!-- line with error -->
<% else %>
<p>No</p>
<% end -%>
没有
这将抛出错误:
undefined local variable or method `special' for #<#<Class:0x007fa20fbb0310>:0x007fa20cb986a0>
未定义的局部变量或方法'special'#
当我试图显示
local\u assigns.has\u key?(:special)
时,它也会显示false
。知道发生了什么吗?我总是建议在键下发送变量,而不是直接发送。也许可以试试这个:
<%= render 'clients/clients_table', locals: {special: true} %>
而是使用local\u分配
<% if local_assigns[:special] %>
已定义?(:特殊)
检查符号是否已定义。总是这样
您想检查变量特殊是否已定义:已定义?(特殊)
<% if local_assigns[:special] %>