Yii2迁移-分离迁移

Yii2迁移-分离迁移,yii2,database-migration,yii2-advanced-app,Yii2,Database Migration,Yii2 Advanced App,我正在创建具有以下结构的模块: common L modules LL blog LLL backend LLL frontend LLL common LLL migrations 我在yii2文档中找到了一个关于 在console/config/main.php中,我设置了: 'migrate-blog' => [ 'class' => 'yii\console\controllers\MigrateController', 'm

我正在创建具有以下结构的模块:

common
L modules
LL blog
LLL backend
LLL frontend
LLL common
LLL migrations
我在yii2文档中找到了一个关于

在console/config/main.php中,我设置了:

'migrate-blog' => [
            'class' => 'yii\console\controllers\MigrateController',
            'migrationNamespaces' => ['app\common\modules\blog\migrations'],
            'migrationTable' => 'migration_blog',
            'migrationPath' => null,
        ]
然后我转到控制台并运行以下命令:

php yii migrate/create app\\common\\modules\\blog\\migrations\\create_table_blog_post
它返回一个错误:

Error: Namespace 'app\common\modules\blog\migrations' not found in `migrationNamespaces`

我是否缺少任何设置?

是否将以下信息添加到console.php的配置中

'controllerMap' => [

    // Migrations for the specific project's module
    'migrate-module' => [
        'class' => 'yii\console\controllers\MigrateController',
        'migrationNamespaces' => ['app\module\migrations'],
        'migrationTable' => 'migration_module',
        'migrationPath' => null,
    ],
],
我已经看到您在console/config/main.php中有配置,然后检查yii文件有以下行

$config = require(__DIR__ . '/console/config/main.php');
在这之后而不是跑步

php yii migrate/create app\\common\\modules\\blog\\migrations\\create_table_blog_post
运行以下命令

php yii/migrate-blog/create create_table_blog_post  

我希望这会有所帮助。

谢谢,它解决了错误,但迁移是在console/migrations下创建的。我想在我的模块内创建迁移?这是migrationPath吗?您是否在配置中提供了migrationNamespaces配置
'migrationNamespaces'=>['app\module\migrations'],
如果您使用
php yii/migrate blog/create create_table_blog_post,实际上已经足够了
如果迁移位于其他一些不在migrationNamespaces中的目录中,通常会使用migrationPath。如果仍然无法解决您的问题,请告诉我。我希望这有帮助。