email_orgs имеет много связей с организациями
Tabel email_orgs
id | name | organizations_id
1 | a | 1
2 | b | 1
3 | c | 2
4 | d | 3
Столовые организации
id | name
1 | aa
2 | bb
3 | cc
Модель email_orgs
class email_orgsTable extends table
{
public function initialize(array $config)
{
$this->table('email_orgs');
$this->primaryKey('id');
$this->belongsTo('organizations', [
'foreignKey' => 'organizations_id',
'joinType' => 'INNER',
'className' => 'organizations',
]);
}
}
Модельные организации
class organizationsTable extends table
{
public function initialize(array $config)
{
$this->table('organizations');
$this->primaryKey('id');
$this->belongsTo('tabaghe_organizations_peoples', [
'foreignKey' => 'tabagheOrganizationsPeople_id',
'joinType' => 'INNER',
]);
$this->belongsTo('onvane_organizations', [
'foreignKey' => 'onvaneOrganizations_id',
'joinType' => 'INNER',
]);
}
}
контроллер
$email_org=TableRegistry::get('email_orgs');
$email_org=$email_org->find('all')->contain(['organizations'])->offset($from)->limit($to) ;
скажем erro «email_orgs не связан с организациями»
пожалуйста, помогите мне, пожалуйста
Соглашения по моделям и базам данных
Имена классов таблиц множественного числа и CamelCased. People, BigPeople и ReallyBigPeople являются примерами традиционных названий моделей.
Имена таблиц, соответствующие моделям CakePHP, являются множественными и подчеркнуты. Основными таблицами для вышеупомянутых моделей будут people, big_people и real_big_people соответственно.
Вы можете использовать служебную библиотеку Cake \ Utility \ Inflector для проверки единственного / множественного числа слов. См. Инфлектор для получения дополнительной информации.
Имена полей с двумя или более словами подчеркиваются: first_name.
Внешние ключи в отношениях hasMany, ownTo или hasOne по умолчанию распознаются как (единственное) имя связанной таблицы, за которым следует _id. Поэтому, если у Bakers есть Many Cakes, таблица cakes будет ссылаться на таблицу bakers через внешний ключ baker_id. Для такой таблицы, как category_types, имя которой содержит несколько слов, внешним ключом будет category_type_id.
Таблицы объединения, используемые в отношениях BelongsToMany между моделями, должны быть названы в честь таблиц моделей, к которым они будут присоединяться, в алфавитном порядке (яблоки_зебры, а не зебры_апплеты).
Действительно глупо.
я не знаю но когда переименую email_orgs
в emailorgs
в базе данных и модели
это сработало.
я не знаю почему??