お世話になっております。
fuelphp のマイグレーションについて、不可解な点があります。
長くなります。すみません。
マイグレーションファイルを以下のように12個作成し、
001_create_customers.php
002_create_crammers.php
003_create_crammerhistories.php
004_create_users.php
005_create_statushistories.php
006_create_bankaccounts.php
007_create_banks.php
008_create_bankbranches.php
009_create_courses.php
010_create_courseselects.php
011_create_memos.php
012_create_enquetes.php
中身はそれぞれ
public function up() {
\DBUtil::create_table('customers', array(
~
public function down() {
\DBUtil::drop_table('customers');
となっています。
ここで
php oil refine migrate
を実行すると、
Performed migrations for app:default:
003_create_crammerhistories
004_create_users
005_create_statushistories
006_create_bankaccounts
007_create_banks
008_create_bankbranches
009_create_courses
010_create_courseselects
011_create_memos
012_create_enquetes
となり、
001番と002番が作成されないのです。
続いて、
php oil refine migrate:current
を実行すると、
Newly installed migrations for app:default:
- 001_create_customers
- 002_create_crammers
と表示され、目的のcustomersとcrammersはマイグレーションできるのですが、
app/config/development/migrations.php
の中をのぞくと、
(前略)
'app' =>
array (
'default' =>
array (
0 => '001_create_customers',
1 => '002_create_crammers',
2 => '002_create_customers',
3 => '003_create_crammerhistories',
4 => '004_create_users',
5 => '005_create_statushistories',
6 => '006_create_bankaccounts',
7 => '007_create_banks',
8 => '008_create_bankbranches',
9 => '009_create_courses',
10 => '010_create_courseselects',
11 => '011_create_memos',
12 => '012_create_enquetes',
),
),
(後略)
となり、customersが2重に表れて、しかも接頭辞の番号が異なります。
また、fuelphpを使って3人で開発を進めておりまして、
ときどきマイグレーションファイルを書き換えるのです。
(マイグレーションファイルを書き換える方法があってるかどうかも問題ですが)
そのとき、以下のようなバッチファイルを作成しまして、データベースの更新を
一括で行いたいのですが、
php oil refine migrate:down -v=0
php oil refine migrate
php oil refine migrate:current (currentを指定しないと001,002が生成されない)
データ読み込み
肝心の、データベースを全部一度ドロップする部分の
php oil refine migrate:down -v=0
が、
Reverted migrations for app:default:
- 012_create_enquetes
- 011_create_memos
- 010_create_courseselects
- 009_create_courses
- 008_create_bankbranches
- 007_create_banks
- 006_create_bankaccounts
- 005_create_statushistories
- 004_create_users
- 003_create_crammerhistories
- 002_create_crammers
- 001_create_customers
と、うまくいく場合と、
Reverted migrations for app:default:
- 001_create_customers
と一行だけ表示され、全部がドロップされないケースがあります。
自分がマイグレーションについて理解が浅いものですから、
どうしてこのようになるのかわかりません。
お知恵をお貸しいただければ幸いに存じます。