【发布时间】:2013-09-27 06:51:11
【问题描述】:
我正在使用一个扩展,我需要将变量从块类移回模型,我使用过会话它有时会工作但不统一, 有没有其他办法通过呢,
提前致谢,
【问题讨论】:
-
您是否在相关块中使用该模型?能给我举个例子吗?一些代码可能......
标签: magento
我正在使用一个扩展,我需要将变量从块类移回模型,我使用过会话它有时会工作但不统一, 有没有其他办法通过呢,
提前致谢,
【问题讨论】:
标签: magento
尝试使用 Magento 的注册表模式
三种注册方法是
Mage::register
Mage::unregister
Mage::registry
register 方法是您设置类全局变量的方式。
Mage::register('some_name', $var);
然后,在请求执行的后期,(从任何方法),你可以取回你的变量
$my_var = Mage::registry('some_name');
最后,如果你想让你的变量不可用,你可以使用 unregister 方法将它从注册表中删除。
Mage::unregister('some_name');
【讨论】:
如果你可以将模型用作单例,你可以试试这个:
Mage::getSingleton('yourmodule/yourmodel')->setStuff('xxxx');
以后
Mage::getSingleton('yourmodule/yourmodel')->getStuff();
如果您不知道单例是什么,您可能应该尝试使用 epynic 的注册表方法来防止出现问题。
【讨论】: