0

我正在使用 Yii2 的基本模板。我创建了项目并将其上传到 github,以便其他开发人员可以克隆并开始贡献。

克隆并运行 composer install 后,当我尝试运行 yii migrate 时出现此错误。

λ php yii migrate
Yii Migration Tool (based on Yii v2.0.8)

Total 1 new migration to be applied:
        m160704_071418_user_table

Apply the above migration? (yes|no) [no]:yes
*** applying m160704_071418_user_table
PHP Fatal Error 'yii\base\ErrorException' with message 'Class 'm160704_071418_user_table' not found'

in C:\wamp\www\miespacio\vendor\yiisoft\yii2\console\controllers\MigrateController.php:170

Stack trace:
#0 [internal function]: yii\base\ErrorHandler->handleFatalError()
#1 {main}

我的问题是:我是否缺少任何步骤来完成这项工作?任何帮助将不胜感激,谢谢。

潜在有用的信息:我可以创建新的迁移并在克隆后正常运行它们。问题在于运行现有的迁移。

4

1 回答 1

0

yii migrate/create <migration-name>您应该通过命令创建迁移。并且不要更改迁移的文件名或类名。

示例:创建迁移添加测试表

yii migrate/create create_test_table

运行该命令后,您将拥有一个 php 文件@app/migrations

文件名:m160704_110735_create_test_table.php

代码生成器:

<?php

use yii\db\Migration;

/**
 * Handles the creation for table `test_table`.
 */
class m160704_110735_create_test_table extends Migration
{
    /**
     * @inheritdoc
     */
    public function up()
    {
        $this->createTable('test_table', [
            'id' => $this->primaryKey(),
        ]);
    }

    /**
     * @inheritdoc
     */
    public function down()
    {
        $this->dropTable('test_table');
    }
}

请记住:不要更改文件名或类名。

祝好运并玩得开心点!

于 2016-07-04T11:10:03.423 回答