0

我试图将 cakephp 中的变量传递给视图并得到错误 Undefined variable: view [APP\View\ItQueries\add.ctp, line 9] 和第 9 行是这个

<?php echo $this->Form->hidden('status_type', array('value'=>$view)); ?>

这是我在控制器中定义我的变量的方式

class ItQueriesController extends AppController {

var $view = 'Open';

public function index() {
$this->ItQuery->recursive = 0;
$this->set('view', $this->view);

}

//Other Code

}

这是我试图将变量作为隐藏字段传递的地方

<?php echo $this->Form->create('ItQuery'); ?>
<?php echo __('Add It Query'); ?></legend>
<?php
echo $this->Form->input('status_type', array('type' => 'hidden', 'value'=>$view));
?>
<?php echo $this->Form->end(__('Submit')); ?>

有人可以告诉我如何解决这个问题吗

4

1 回答 1

1

您需要将变量设置为 viewVars 的一部分。

为此,请将其添加到您的控制器操作中:

$this->set('view', $this->view);

例如

class ItQueriesController extends AppController {

    var $view = 'Open';

    function index() {
        $this->set('view', $this->view);
    }

}  

然后,您可以直接使用在视图中访问它$view

您的隐藏字段如下所示:

echo $this->Form->input('status_type', array('type' => 'hidden', 'value'=>$view));
于 2013-03-05T10:32:10.507 回答