0
我有在相关的(属于关联)字段编辑的问题...CakePHP的编辑属于关联关联字段
Class ModelA extends AppModel {
public $belongsTo = array ('ModelB');
public $actsAs = array('Containable');
public function getModelA($id){
$modelA = $this->find('all', array('contain' => array('ModelB'),'conditions' => array('ModelA.id' => $id)));
if(count($modelA)>0){
$modelA = $modelA[0];
}
return $modelA;
}
}
class ModelAsController extends AppController {
public function edit($id = null) {
$modelA = $this->ModelA->getModelA($id);
$this->set('modelA', $modelA);
}
}
数据在$ MODELA的格式为:
array(
'ModelA' => array(
...
),
'ModelB' => array(
...
)
)
到目前为止,一切都很好...
但是,我坚持edit.ctp。我需要从ModelB编辑field1的输入,但我得到空的输入框。代码行是这样的:
echo $this->Form->input('ModelB.field1');
当我尝试调试:
Debugger::log($modelA['ModelB']['field1']);
然后我有正确的值。
将输入框填充到ModelB的field1的方式是什么?
你说得对。我发现一样。 $ this-> data = $ modelA;也很好。 –