在yii2中,当我使用yii迁移命令,我得到一长串剩余的迁移。如何在列表中只运行一个特定迁移而不执行其他迁移?
ejk8hzay1#
如果要跳过已在数据库中实现的某些迁移而不运行迁移,请在不运行迁移的情况下设置迁移状态。通过“标记”迁移,您还可以确保它们不再被重新提示,并且将被视为“完成”。你可以在这里的yii文档中阅读有关标记的内容
wwwo4jvm2#
yii migrate --migrationPath=@app/modules/forum/
kg7wmglp3#
要运行特定的迁移,可以将迁移标记(跳过)到要运行的迁移之前。可以使用以下命令之一标记迁移:使用时间戳指定迁移 yii migrate/mark 150101_185401 使用可由strotime()解析的字符串 yii migrate/mark "2015-01-01 18:54:01" 使用全名 yii migrate/mark m150101_185401_create_news_table 使用unix时间戳 yii migrate/mark 1392853618
yii migrate/mark 150101_185401
yii migrate/mark "2015-01-01 18:54:01"
yii migrate/mark m150101_185401_create_news_table
yii migrate/mark 1392853618
gev0vcfq4#
跑 migrate/history 要列出已应用的迁移,请执行以下操作:
migrate/history
./yii migrate/history
复制要稍后返回的迁移名称(假设它是“m160101\u 185401\u initial\u migration”)。把它放在某个地方,因为你以后会需要它的。在需要运行的迁移历史之前的位置标记迁移历史:
./yii migrate/mark m170101_185401_create_news_table
运行一次迁移:
./yii migrate 1
重置迁移历史记录:
./yii migrate/mark m160101_185401_initial_migration
4条答案
按热度按时间ejk8hzay1#
如果要跳过已在数据库中实现的某些迁移而不运行迁移,请在不运行迁移的情况下设置迁移状态。
通过“标记”迁移,您还可以确保它们不再被重新提示,并且将被视为“完成”。
你可以在这里的yii文档中阅读有关标记的内容
wwwo4jvm2#
kg7wmglp3#
要运行特定的迁移,可以将迁移标记(跳过)到要运行的迁移之前。可以使用以下命令之一标记迁移:
使用时间戳指定迁移
yii migrate/mark 150101_185401
使用可由strotime()解析的字符串yii migrate/mark "2015-01-01 18:54:01"
使用全名yii migrate/mark m150101_185401_create_news_table
使用unix时间戳yii migrate/mark 1392853618
gev0vcfq4#
跑
migrate/history
要列出已应用的迁移,请执行以下操作:复制要稍后返回的迁移名称(假设它是“m160101\u 185401\u initial\u migration”)。把它放在某个地方,因为你以后会需要它的。
在需要运行的迁移历史之前的位置标记迁移历史:
运行一次迁移:
重置迁移历史记录: