替换$ this-> element()CakePHP

时间:2013-09-19 15:05:21

标签: cakephp cakephp-2.4

我们都知道$this->element()已被弃用。他们说,The "$options['plugin']" is deprecated and will be removed in CakePHP 3.0. Use "Plugin.element_name" instead.。那么,当我从一个视图而不是一个插件中使用它时,会有什么替代品呢?或者不推荐在视图中使用$this->element()

我应该从视图中使用该功能吗?

2 个答案:

答案 0 :(得分:5)

{@ 1}}方法本身不被弃用,只使用element()数组中的plugin键。这意味着您应该使用

$options

而不是

$this->element('Contacts.helpbox');

另见http://book.cakephp.org/2.0/en/views.html#requesting-elements-from-a-plugin

答案 1 :(得分:1)

只有在plugin中使用$options密钥才会被弃用,就像dhofstet所说的那样。

要在插件中渲染元素,您可以使用此

$this->element('Contacts.helpbox');

<强>(OR)

您还可以通过设置渲染元素 $this->plugin = pluginname然后$this->element('element_name)'

$this->plugin = 'Contacts';
$this->element('helpbox');

这会在helpbox插件中呈现Contacts元素