0

我有一个名为 with 的模型与andVoicenotebelongsTo关系。当我执行以下操作时:FonykerActivitySource

function admin_index(){

        $this->layout = 'admin';
        $this->Voicenote->recursive = 2;

        $fields = array(
            'Voicenote.id',
            'Voicenote.title',
            'Voicenote.created',
            'Voicenote.duration',
            'Voicenote.public',
        );

        $this->paginate = array(
            'fields' => $fields,
            'limit' => 20,
            'order' => array('id' => 'ASC')
        );

        $result = $this->paginate('Voicenote');
        pr($result);
        $this->set('result', $result);
    }

结果数组没有Fonykerand ActivitySource,关于可能发生什么的任何想法?

[0] => Array
        (
            [Voicenote] => Array
                (
                    [id] => 1
                    [title] => CFRFA5KBLPJZP79B2PG8XH8DFSMB8G
                    [created] => 2011-03-09 00:00:00
                    [duration] => 23868
                    [public] => 0
                )

            [Fonyker] => Array
                (
                )

            [ActivitySource] => Array
                (
                )

此外,当我尝试使用unbindModel()和取消绑定所有内容时FonykerActivitySource它们甚至不会显示为空数组。

4

2 回答 2

1

我自己对 CakePHP 还很陌生,但我认为您还必须定义FonykerActivitySource模型?例如,将它们置于hasOnehasMany关系中。

编辑:另外,你的$fields变量——你似乎没有从Fonykeror中选择任何值ActivitySource

于 2011-06-17T21:27:36.130 回答
0

因为您正在使用recursive = 2并看到空数组FonykerActivitySource数组,所以您肯定会查询这些模型,但您的限制'fields'意味着您只会获得您列出的字段。

您需要在fields 数组Fonyker中添加所需的字段。ActivitySource

于 2011-06-18T11:25:29.643 回答