使用Yii2中的迁移功能,我试图在表'authorization_key'
上添加一个名为'users'
的新列。我的up
- 函数如下:
我最初的run
函数就是这个
public function up()
{
$this->createTable( 'users', [
'id' => 'pk',
'username' => 'string UNIQUE',
'password' => 'string'
]);
}
当我运行./yii migrate up
时
在./yii migrate/create
之后,表格已创建。
但是在添加$this->addColumn('user', 'authorization_key'for', 'string UNIQUE');
之后,即
新的up
函数是
public function up()
{
$this->createTable( 'users', [
'id' => 'pk',
'username' => 'string UNIQUE',
'password' => 'string'
]);
$this->addColumn('user', 'authorization_key'for', 'string UNIQUE');
}
我跑
./yii migrate up
,它没有用,也没有创建新列, 但它正在显示
No new migration found. Your system is up-to-date.
如何使用迁移添加表中的新列或此处的错误是什么?我在这里错过了一些命令吗?
答案 0 :(得分:9)
您创建的迁移已标记为已完成(检查数据库中的“迁移”表)。如果要向该表添加新列,则必须关闭迁移并再次运行它或创建新迁移。