我有一个.rhtml
文件,有很多这样的条件检查<% if @mime_partial %>
在使用html标签之前使用这个条件。
我正在制作动作邮件。我正在重新设计视图,代码是由我的朋友写的。在浏览器中,可以单击按钮以“发送电子邮件”。
变量@mime_partial
没有在哪里定义。我认为这是Rails的内部事情。
这个mime_partial
有什么意义?
提前致谢。
修改
我用grep并得到了这个:
xyz.merge!(:mime_partial => true, .... )
它从未被设置为假,那么为什么他们使用if条件呢?
答案:
我找到了答案。
此@mime_partial
对应mailer
。当我在浏览器中呈现视图时,它将由控制器而非邮件程序控制,因此@mime_partial
将为false
。
当我通过发送电子邮件呈现内容时,然后在电子邮件中@mime_partial
将设置为true
,因为它由邮件程序而不是控制器控制。然后它将呈现一些if条件内的新内容。
感谢您的支持。
答案 0 :(得分:0)
很可能你的控制器正在创建这个实例变量。您可以查看源代码并查看此变量的使用位置。
我在Rails 1.x源代码中没有看到这个变量,所以我认为它是特定于你的应用程序的东西。但可能是,这个变量是由一些gem或插件创建的。
cd your/rails_app && grep -r 'mime_partial' .
答案 1 :(得分:0)
如果没有关于你究竟在做什么的更多信息,就无法猜出这意味着什么。
然而,一般情况是你有这样的事情:
<% if @mime_partial %>
some stuff here that only gets rendered if @mime_partial is true
<% end %>
简而言之,如果@mime_partial
未设置为true,那么if中的内容将不会包含在输出(页面)中。