/
20180220023217_create_roles_table.php
75 lines (69 loc) · 1.99 KB
/
20180220023217_create_roles_table.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<?php
use Phinx\Migration\AbstractMigration;
class CreateRolesTable extends AbstractMigration
{
/**
* Change Method.
*
* Write your reversible migrations using this method.
*
* More information on writing migrations is available here:
* http://docs.phinx.org/en/latest/migrations.html#the-abstractmigration-class
*
* The following commands can be used in this method and Phinx will
* automatically reverse them when rolling back:
*
* createTable
* renameTable
* addColumn
* renameColumn
* addIndex
* addForeignKey
*
* Remember to call "create()" or "update()" and NOT "save()" when working
* with the Table class.
*/
public function change()
{
$table = $this->table('directus_roles', ['signed' => false]);
$table->addColumn('name', 'string', [
'limit' => 100,
'null' => false
]);
$table->addColumn('description', 'string', [
'limit' => 500,
'null' => true,
'default' => NULL
]);
$table->addColumn('ip_whitelist', 'text', [
'null' => true,
'default' => null
]);
$table->addColumn('nav_blacklist', 'text', [
'null' => true,
'default' => null
]);
$table->addColumn('external_id', 'string', [
'limit' => 255,
'null' => true,
'default' => null
]);
$table->addColumn('nav_override', 'text', [
'null' => true,
'default' => null
]);
$table->addColumn('enforce_2fa', 'boolean', [
'null' => true,
'default' => false
]);
$table->addIndex('name', [
'unique' => true,
'name' => 'idx_group_name'
]);
$table->addIndex('external_id', [
'unique' => true,
'name' => 'idx_roles_external_id'
]);
$table->create();
}
}