CakePHP FormHelper不同意使用Containable返回的数据

时间:2013-03-21 17:01:51

标签: cakephp containable formhelper

我坚持一些相当简单的事情:
SN有很多NA。我使用

检索包含NAs的条件的数据
 $this->find('all',array(
        'recursive' => -1,
        'conditions' => array(
            'SN.deleted IS NULL',
            'SN.user_id' => $user_id,
            ),
        'contain' => array(
            'NA' => array('conditions'=> array('wave' => 1) ),
        )
    ));

SN和NA都可以作为包含物。

我得到数据,但NA没有嵌套在SN数组中:

array(
  (int) 0 => array(
    'SN' => array(
        'id' => '1',
        'user_id' => '1',
    ),
    'NA' => array(
        (int) 0 => array(
            'id' => '1',
            'SN_id' => '1',
            'wave' => '1',
        )
    )
),

使用FormHelper会导致很多令人讨厌的行为(我现在通过按需要按摩数据来解决这个问题,但我仍然想知道我做错了什么),例如使用Containable返回的数据,我无法指定路径。

debug($this->data[$s]['NA'][0]['wave']); # would work
echo $this->Form->input("$s.NA.0.role"); # doesn't work
# leads to data[SN][0][NA][0][role] # SN is auto-prepended
echo $this->Form->input("$s.SA.NA.0.role"); # what I use after massaging the data so it's nested

即使我尝试按摩数据和错误消息数组,我仍然会遇到验证消息没有显示出来的问题。

0 个答案:

没有答案