есть в yii2 такая вещь как rbac, в ней есть таблица auth_item_child, в ней поля parent и child, в эти поля можно вставить только значения из таблицы auth_item, поля name. Не знаю как это описать, приложу картинку.
Так вот, вопрос состоит в следующем, как добавить запись в таблицу auth_item_child через миграции? пробовал так:
$this->insert('auth_item_child', [
'parent' => 'item_1',
'child' => 'item_2'
]);
но при выполнении миграции происходит ошибка:
insert into auth_item_child ...Exception: SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`tag_api_client`.`auth_item_child`, CONSTRAINT `auth_item_child_ibfk_1` FOREIGN KEY (`parent`) REFERENCES `auth_item` (`name`) ON DELETE CASCADE ON UPDATE CASCADE)
The SQL being executed was: INSERT INTO `auth_item_child` (`parent`, `child`) VALUES ('auth_item.browsingSummerCeremony', 'auth_item.allowedToSummerCeremony') (/var/www/html/www/vendor/yiisoft/yii2/db/Schema.php:664)
В таблицы RBAC в Yii 2 записи добавляются только через классы самого RBAC.
В Вашем случае нужно для начала создать роли.
$role1 = Yii::$app->authManager->createRole('role1');
$role1->description = 'Роль1';
Yii::$app->authManager->add($role1);
$role2 = Yii::$app->authManager->createRole('role2');
$role2->description = 'Роль2';
Yii::$app->authManager->add($role2);
Подробнее можете посмотреть здесь.
А, потом для соответствующей роли добавить дочернюю посредством метода addChild.
Yii::$app->authManager->addChild($role1,$role2);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Имеется VPS - Windows Server 2016
Необходимо включение режима "Safe Mode" путем передачи запроса посредством php(api) на Mikrotik!
Не удается заблокировать ошибку после вызова функции SoapClientОшибка пишется в лог, даже если обернуть функцию в try catch