Cakephp 2.0 не содержит содержимого не работает - PullRequest
1 голос
/ 29 марта 2012

edit - код, который использует.

$this->paginate = array(
            'limit' => 20,
            'order' => array(
                'Individual.last_name' => 'asc',
                'Individual.first_name' => 'asc'
            ),
            'contain' => array(
                'AccountsTrailersIndividual' => array(
                    'fields' => array('id', 'accounts_trailer_id', 'individual_id', 'account_holder_id'),
                    'AccountsTrailer' => array(
                        'fields' => array('id', 'account_id', 'trailer_id', 'charge_off_date', 'closed_date'),
                        'Balance' => array(
                            'fields' => array('id', 'accounts_trailer_id', 'balance')
                        ),
                        'Account' => array(
                            'fields' => array('id', 'account_number'),
                            'conditions' => array('account_number' => $search)
                        ),
                    ),
                    'AccountHolder' => array(
                        'fields' => array('id', 'name')
                    )
                ),
            ),
            'fields' => array('id', 'first_name', 'middle_initial', 'last_name', 'suffix'),
        );

Я пытаюсь сохранить свои данные, чтобы получить только то, что мне нужно, и это не работает. Я верю, что все настроено правильно, но это дает мне ошибки. Что у меня есть в моем файле appModel.php

public $actsAs = array('Containable');

я получаю следующие ошибки:

Model "AccountsTrailersIndividual" is not associated with model "AccountsTrailer" [CORE\Cake\Model\Behavior\ContainableBehavior.php, line 339]

Model "AccountsTrailersIndividual" is not associated with model "AccountHolder" [CORE\Cake\Model\Behavior\ContainableBehavior.php, line 339]

Я проверил ассоциации в указанных моделях, и ассоциации есть. для аккаунта TrailersIndividual это выглядит так

public $belongsTo = array(
    'Individual' => array(
        'className' => 'Individual',
        'foreignKey' => 'individual_id',
        'conditions' => '',
        'fields' => '',
        'order' => ''
    ),
    'AccountsTrailer' => array(
        'className' => 'AccountsTrailer',
        'foreignKey' => 'accounts_trailer_id',
        'conditions' => '',
        'fields' => '',
        'order' => ''
    ),
    'AccountHolder' => array(
        'className' => 'AccountHolder',
        'foreignKey' => 'account_holder_id',
        'conditions' => '',
        'fields' => '',
        'order' => ''
    )
);

для AccountsTrailer

public $hasAndBelongsToMany = array(
    'Individual' => array(
        'className' => 'Individual',
        'joinTable' => 'accounts_trailers_individuals',
        'foreignKey' => 'accounts_trailer_id',
        'associationForeignKey' => 'individual_id',
        'unique' => true,
        'conditions' => '',
        'fields' => '',
        'order' => '',
        'limit' => '',
        'offset' => '',
        'finderQuery' => '',
        'deleteQuery' => '',
        'insertQuery' => ''
    )
);

и для AccountHolder

public $hasMany = array(
    'AccountsTrailersIndividual' => array(
        'className' => 'AccountsTrailersIndividual',
        'foreignKey' => 'account_holder_id',
        'dependent' => false,
        'conditions' => '',
        'fields' => '',
        'order' => '',
        'limit' => '',
        'offset' => '',
        'exclusive' => '',
        'finderQuery' => '',
        'counterQuery' => ''
    )
);

Я знаю, что, должно быть, что-то упустил, но не могу найти это.

Любая помощь очень ценится.

...