我正在尝试扩展FormHelper以包括一些自定义控件。我想将此作为插件的一部分。该文档对如何实现此目标有些粗略。
我已经在以下文件夹结构中创建了所需的帮助器:
\plugins\MyPlugin\src\View\Helper\MyFormHelper
助手看起来像这样:
<?php
use Cake\View\Helper\FormHelper as BaseFormHelper;
class MyFormHelper extends BaseFormHelper
{
}
...是的,目前为空。插件文档有点模糊,但是似乎可以在主应用程序的AppView.php::initialise()
方法中以以下方式加载此帮助程序:
$this->loadHelper('MyPlugin.MyFormHelper');
但是,这不起作用。这样我会遇到致命错误:
Fatal error: Cannot declare class MyFormHelper, because the name is already in use in /Users/geoidesic/MyApp/plugins/MyPlugin/src/View/Helper/MyFormHelper.php on line 12
然后的问题是如何利用此插件帮助器?具体来说,我想为该应用覆盖默认的FormHelper。 className
有一个loadHelper
选项,但我也找不到一种可以通过插件助手使用的方法。
答案 0 :(得分:0)
我缺少助手的名称空间。应该是这样的:
<?php
namespace MyPlugin\View\Helper
use Cake\View\Helper\FormHelper as BaseFormHelper;
class MyFormHelper extends BaseFormHelper
{
}