Я создал новую Таблицу на миграцию для моего проекта, чтобы включить AutoLogin на Cookie.
Моя проблема в том, что у TableObject отсутствует свойство ["connectionName"] при инициализации.
Я попытался найти способ исправить это, но единственный найденный способ - установить соединение с ConnectionManager. Пока это будет работать, но мне бы очень хотелось узнать, где я допустил ошибку и почему самостоятельно для connectionName не установлено значение «default».
Мой файл миграции выглядит так:
public function change()
{
$table = $this->table('autologins', ['id' => false, 'primary_key' => 'id']);
$table->addColumn('id', 'uuid', [
'limit' => 36,
'null' => false,
]);
$table->addColumn('token', 'string',[
'null' => false,
'limit' => 32,
]);
$table->addColumn('user_agent', 'string',[
'null' => false,
'limit' => MysqlAdapter::TEXT_TINY,
]);
$table->addColumn('user_id', 'uuid',[
'limit' => 36,
'null' => false,
]);
$table->addColumn('expiry_date', 'datetime',[
'null' => false,
]);
$table->create();
}
Без настройки соединения
$this->setConnection(ConnectionManager::get('default'));
Я получаю следующее var_dump:
object(App\Model\Table\AutologinsTable)#486 (8) {
["registryAlias"]=> string(10) "Autologins"
["table"]=> string(10) "autologins"
["alias"]=> string(10) "Autologins"
["entityClass"]=> string(26) "App\Model\Entity\Autologin"
["associations"]=> array(0) { }
["behaviors"]=> array(0) { }
["defaultConnection"]=> string(7) "default"
["connectionName"]=> NULL }