【AdonisJS】特定のマイグレーションファイルだけを指定して実行する方法

AdonisJS

方法

Laravelには、以下のようにひとつのファイルだけマイグレーションする方法があったのですが、

php artisan migrate:refresh  --step=1 --path=/database/migrations/xxxx

AdonisJSには現状、同じようにワンコマンドで実行する方法はありません。
なので、Dry runという方法を使って解決します。

方法としては、こちらにあります。

# Run
node ace migration:run --dry-run

# Rollback
node ace migration:rollback --dry-run

実行すると、以下のようにSQLが出力されるので、それをDBに直接実行する形になります。

------------- database/migrations/1648003714820_xxxxxxxxxxx -------------

CREATE TABLE `xxxxxxxxxxx` (`id` INT unsigned NOT NULL auto_increment PRIMARY KEY, `name` VARCHAR(255) NOT NULL, `created_at` TIMESTAMP, `updated_at` TIMESTAMP)

------------- END -------------

まとめ

migration:statusとの辻褄が合わなくなる?可能性がありそうなので、
開発環境であればDBのバックアップを取っておくなどして、まずは普通のmigration:rollbackやmigration:runを検討したほうが良いと思います。

この記事を書いた人
Tenma Endou

15歳からプログラミングを始め、現在は正社員+個人事業主でほぼ休まず労働
2018年に開発したアプリ「LIVLE」がTwitterで12000RTされる。(過去の栄光)
Flutter / Nuxt.js / Laravel / Go / React
お仕事依頼はこちらから⇢engineer@tepci.me

Tenma Endouをフォローする
AdonisJSプログラミング
Tenma Endouをフォローする
目に優しいエンジニアブログ

コメント

タイトルとURLをコピーしました