【问题标题】:How can I override cake FormHelper?如何覆盖蛋糕 FormHelper?
【发布时间】:2011-02-23 21:18:48
【问题描述】:

我需要改变 $form->create 的行为,所以我创建了一个 helper 来代替原生的 formHelper:

SlugHelper:

App::import('Helper', 'Form');
class SlugFormHelper extends FormHelper {

    public function create() {
        return "error";
    }
}

在 AppController 中:

public $helpers = array('SlugForm' => 'Form');

在视图中:

$form->create(); 

但它仍然调用原生的$form->create();

【问题讨论】:

    标签: php cakephp-1.3 formhelper


    【解决方案1】:

    只是一个想法-但您不应该通过执行以下操作在控制器中定义助手:

    public $helpers = array('SlugForm', 'Form');
    

    而不是“SlugForm => Form”。希望对您有所帮助!

    【讨论】:

    • 我没有尝试加载 2 个助手,而是尝试将 'SlugForm' 加载为 'Form'
    【解决方案2】:

    我一直在尝试做同样的事情。我觉得很简单,就是……

    public $helpers = array('SlugForm');
    

    【讨论】:

      【解决方案3】:

      尝试:

      public $helpers = array(
          'Form' => array('className' => 'MyForm'),
      );
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-09-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多