Cakephp 中的脚手架允许选择 Parent_id,但烘焙控制器显示一个空的选择框
Posted
技术标签:
【中文标题】Cakephp 中的脚手架允许选择 Parent_id,但烘焙控制器显示一个空的选择框【英文标题】:Scaffolding in Cakephp allows Parent_id to be selected, but baked controllers show an empty select box 【发布时间】:2014-09-25 21:58:38 【问题描述】:当我使用 Tree 行为并搭建我的控制器时,我的 parent_id 会显示在添加视图的选择框中;然而,当我烘焙我的控制器和视图时,我最终得到了一个空的 parent_id 选择框。我知道这很简单,但我就是想不通。
这是我的控制器:
public function add()
if ($this->request->is('post'))
$this->Test->create();
if ($this->Test->save($this->request->data))
$this->Session->setFlash(__('The test has been saved.'));
return $this->redirect(array('action' => 'index'));
else
$this->Session->setFlash(__('The test could not be saved. Please, try again.'));
$parentTests = $this->Test->ParentTest->find('list');
$this->set(compact('parentTests'));
这是我的模型:
public $belongsTo = array(
'ParentTest' => array(
'className' => 'Test',
'foreignKey' => 'parent_id',
'conditions' => '',
'fields' => '',
'order' => ''
)
);
public $hasMany = array(
'ChildTest' => array(
'className' => 'Test',
'foreignKey' => 'parent_id',
'dependent' => false,
'conditions' => '',
'fields' => '',
'order' => '',
'limit' => '',
'offset' => '',
'exclusive' => '',
'finderQuery' => '',
'counterQuery' => ''
)
);
如果有人能帮我解决这个问题,我将不胜感激。提前谢谢你。
【问题讨论】:
【参考方案1】:Bake 可能无法正确解决此问题。
必须手动调整,将变量重命名为parents
:
$parents = $this->Test->ParentTest->find('list');
$this->set(compact('parents'));
【讨论】:
以上是关于Cakephp 中的脚手架允许选择 Parent_id,但烘焙控制器显示一个空的选择框的主要内容,如果未能解决你的问题,请参考以下文章