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] %>