Forms 在控制器cakephp中创建表单

Forms 在控制器cakephp中创建表单,forms,cakephp,Forms,Cakephp,我正在尝试在控制器中使用窗体帮助器。我需要它,因为我需要将表单HTML存储在另一个文件中。我在控制器中的代码如下: <?php function html_form($id){ $form_fields=array();//has many values $html .= $this->Form->create('web_forms', array( 'action' => 'html_form )); $html .= $this

我正在尝试在控制器中使用窗体帮助器。我需要它,因为我需要将表单HTML存储在另一个文件中。我在控制器中的代码如下:

<?php
function html_form($id){
$form_fields=array();//has many values
$html .= $this->Form->create('web_forms', array(
            'action' => 'html_form
        ));
$html .= $this->Form->input($form_fields['name']);
return $html;
?>
尝试更改此选项:

$html .= $form->create('web_forms', array(
            'action' => 'html_form'
        ));
为此:

$html .= $this->Form->create('web_forms', array(
            'action' => 'html_form'
        ));
尝试更改此选项:

$html .= $form->create('web_forms', array(
            'action' => 'html_form'
        ));
为此:

$html .= $this->Form->create('web_forms', array(
            'action' => 'html_form'
        ));

之前我使用了$this->Form->create()。它也显示了同样的错误。这就是我试图改变它的原因。两者都不起作用。我想知道控制器中使用的语法。然后我尝试在您的问题中输入更多信息,如文件名或其他信息,因为这段代码运行良好@GaneshAre您非常确定$this->Form->create()直接在控制器中工作。因为我尝试了$form->create()之类的方法。但它显示了错误,就像在非对象上调用函数一样。你能解释一下这个错误的含义吗?$this->Form是一个helper类,它只在表示层(视图)上工作,这就是错误的基本含义。要创建动态表单(这显然是您要做的),您应该使用JavaScript,但我们不能用这么少的信息来帮助您。正如之前有人告诉过你的,表单应该由视图来处理。它也显示了同样的错误。这就是我试图改变它的原因。两者都不起作用。我想知道控制器中使用的语法。然后我尝试在您的问题中输入更多信息,如文件名或其他信息,因为这段代码运行良好@GaneshAre您非常确定$this->Form->create()直接在控制器中工作。因为我尝试了$form->create()之类的方法。但它显示了错误,就像在非对象上调用函数一样。你能解释一下这个错误的含义吗?$this->Form是一个helper类,它只在表示层(视图)上工作,这就是错误的基本含义。要创建动态表单(这显然是您要做的),您应该使用JavaScript,但我们不能用这么少的信息来帮助您。正如之前有人告诉过你的,表单应该由视图来处理。你在$this和form之间有太多的空间请阅读-另外,表单不是在控制器中生成的,而是在视图中生成的。@mark我很清楚表单只在视图中生成。但是现在,我需要创建动态表单,所以我需要上面的函数来返回表单。这就是我一直试图在controller中构建表单的原因。我需要在控制器中使用表单帮助器。有可能吗?也许你应该解释一下你到底想做什么。具体在哪里,为什么要对表单HTML做什么?在$this和form之间有太多的mich空间请阅读-另外,表单不是在控制器中生成的,而是在视图中生成的。@mark我很清楚表单只在视图中生成。但是现在,我需要创建动态表单,所以我需要上面的函数来返回表单。这就是我一直试图在controller中构建表单的原因。我需要在控制器中使用表单帮助器。有可能吗?也许你应该解释一下你到底想做什么。具体在哪里,为什么要对表单HTML做什么?