Cakephp 3 не извлекает записи связанных моделей

Моя школьная модель имеет many to many отношения с моей моделью атрибута присоединились attribute_school Таблица.
В моем Ракушка Папка для работы cron У меня есть следующие в моей основной функции:

$schoolsRaw = TableRegistry::get('Schools');

$schools = $schoolsRaw->find('all', [
'fields' => [
'Schools.name',
'Schools.logo',
'Schools.discount'
],
'contain' => [
'Users'=> [
'fields' => [
'Users.first_name',
'Users.last_name',
'Users.email',
'Users.title'
]
],
'Attributes' => [
'fields' => [
'Attributes.model'
]
]
]
]);

echo debug(json_encode($schools , JSON_PRETTY_PRINT));

Приведенные выше команды эха продолжают генерировать пустые значения для всех экземпляров школьной записи, например:

{
"name": "Genesis School",
"logo": "badges\/genesis.jpg",
"discount": "Not Stated",
"attributes": [],
"user": {
"first_name": "xxxxx",
"last_name": "yyyyy",
"email": "mynane@yahoo.co.uk",
"title": "Ms"}

Мои модели:

//schools
public function initialize(array $config)
{
parent::initialize($config);

$this->setTable('schools');
$this->setDisplayField('name');
$this->setPrimaryKey('id');

$this->belongsTo('Users', [
'foreignKey' => 'user_id',
'joinType' => 'INNER'
]);
$this->belongsToMany('Attributes', [
'foreignKey' => 'school_id',
'targetForeignKey' => 'attribute_id',
'joinTable' => 'attributes_schools'
]);
}

// attributes model
public function initialize(array $config)
{
parent::initialize($config);

$this->setTable('attributes');
$this->setDisplayField('name');

$this->belongsToMany('Schools', [
'foreignKey' => 'attribute_id',
'targetForeignKey' => 'school_id',
'joinTable' => 'attributes_schools'
]);
}

// join table
public function initialize(array $config)
{
parent::initialize($config);
$this->primaryKey('id');
$this->setTable('attributes_schools');

$this->belongsTo('Schools', [
'foreignKey' => 'school_id',
'joinType' => 'INNER'
]);
$this->belongsTo('Attributes', [
'foreignKey' => 'attribute_id',
'joinType' => 'INNER'
]);
}

Это CakePHP 3.4, и я не знаю, почему он не извлекает записи атрибутов и не регистрируется никаких ошибок. Пожалуйста помоги

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector