mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-11 19:20:01 +08:00
Fixed RBAC migration after bad copy-paste
This commit is contained in:
@@ -74,7 +74,7 @@ class m140506_102106_rbac_init extends \yii\db\Migration
|
|||||||
'updated_at' => $this->integer(),
|
'updated_at' => $this->integer(),
|
||||||
'PRIMARY KEY ([[name]])',
|
'PRIMARY KEY ([[name]])',
|
||||||
'FOREIGN KEY ([[rule_name]]) REFERENCES ' . $authManager->ruleTable . ' ([[name]])'.
|
'FOREIGN KEY ([[rule_name]]) REFERENCES ' . $authManager->ruleTable . ' ([[name]])'.
|
||||||
$this->buildFkClause()
|
$this->buildFkClause('ON DELETE SET NULL', 'ON UPDATE CASCADE')
|
||||||
], $tableOptions);
|
], $tableOptions);
|
||||||
$this->createIndex('idx-auth_item-type', $authManager->itemTable, 'type');
|
$this->createIndex('idx-auth_item-type', $authManager->itemTable, 'type');
|
||||||
|
|
||||||
@@ -83,9 +83,9 @@ class m140506_102106_rbac_init extends \yii\db\Migration
|
|||||||
'child' => $this->string(64)->notNull(),
|
'child' => $this->string(64)->notNull(),
|
||||||
'PRIMARY KEY ([[parent]], [[child]])',
|
'PRIMARY KEY ([[parent]], [[child]])',
|
||||||
'FOREIGN KEY ([[parent]]) REFERENCES ' . $authManager->itemTable . ' ([[name]])'.
|
'FOREIGN KEY ([[parent]]) REFERENCES ' . $authManager->itemTable . ' ([[name]])'.
|
||||||
$this->buildFkClause(),
|
$this->buildFkClause('ON DELETE CASCADE', 'ON UPDATE CASCADE'),
|
||||||
'FOREIGN KEY ([[child]]) REFERENCES ' . $authManager->itemTable . ' ([[name]])'.
|
'FOREIGN KEY ([[child]]) REFERENCES ' . $authManager->itemTable . ' ([[name]])'.
|
||||||
$this->buildFkClause(),
|
$this->buildFkClause('ON DELETE CASCADE', 'ON UPDATE CASCADE'),
|
||||||
], $tableOptions);
|
], $tableOptions);
|
||||||
|
|
||||||
$this->createTable($authManager->assignmentTable, [
|
$this->createTable($authManager->assignmentTable, [
|
||||||
@@ -94,7 +94,7 @@ class m140506_102106_rbac_init extends \yii\db\Migration
|
|||||||
'created_at' => $this->integer(),
|
'created_at' => $this->integer(),
|
||||||
'PRIMARY KEY ([[item_name]], [[user_id]])',
|
'PRIMARY KEY ([[item_name]], [[user_id]])',
|
||||||
'FOREIGN KEY ([[item_name]]) REFERENCES ' . $authManager->itemTable . ' ([[name]])' .
|
'FOREIGN KEY ([[item_name]]) REFERENCES ' . $authManager->itemTable . ' ([[name]])' .
|
||||||
$this->buildFkClause(),
|
$this->buildFkClause('ON DELETE CASCADE', 'ON UPDATE CASCADE'),
|
||||||
], $tableOptions);
|
], $tableOptions);
|
||||||
|
|
||||||
if ($this->isMSSQL()) {
|
if ($this->isMSSQL()) {
|
||||||
@@ -153,16 +153,16 @@ class m140506_102106_rbac_init extends \yii\db\Migration
|
|||||||
$this->dropTable($authManager->ruleTable);
|
$this->dropTable($authManager->ruleTable);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function buildFkClause()
|
protected function buildFkClause($delete = '', $update = '')
|
||||||
{
|
{
|
||||||
if ($this->isMSSQL()) {
|
if ($this->isMSSQL()) {
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($this->isOracle()) {
|
if ($this->isOracle()) {
|
||||||
return ' ON DELETE SET NULL';
|
return ' ' . $delete;
|
||||||
}
|
}
|
||||||
|
|
||||||
return ' ON DELETE SET NULL ON UPDATE CASCADE';
|
return implode(' ', ['', $delete, $update]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user