使用Silverstripe模板,我可以将变量从一个包含传递给另一个吗?将变量从一个模板传递到另一个模板
within Order_ConfirmationEmail.ss <% include Order SendingEmail=true %>
。将$ SendingEmail设置为true。
而且在Order.ss通$ SendingEmail到另一个模板通过另一包括:
<% include Order_Content SendingEmail=$SendingEmail %>
然后使用变量$ SendingEmail在Order_Content.ss:
<% if $SendingEmail %>We are sending an email <% end_if %>
不幸的是, $ SendingEmail在Order_Content.ss中没有值(它在Order.ss中)。这种方法可行吗?有没有更好的办法。提前致谢。
我的猜测是'$ SendingEmail'可能没有在包含模块的模板中实际设置。您是否检查过该父模板中的$ SendingEmail的值? – Turnerj
它应该按照https://docs.silverstripe.org/en/3.3/developer_guides/templates/syntax/#includes工作你刷新了吗?你确定这个模板是否被渲染(而不是模块中的另一个)? – wmk