設定ファイル雛形
app/migration.php
return [
'version' => [
'app' => ['default' => 0],
'module' => [],
'package' => []
],
'folder' => 'migrations/',
'table' => 'migration'
];
マイグレーションコマンド
$ php oil refine migrate
$ php oil refine migrate:current(あんまり使わない)
$ php oil refine migrate:up
$ php oil refine migrate:down
$ php oil refine migrate --version=10
$ php oil refine migrate -all
$ php oil refine migrate
$ php oil refine migrate --version=4
$ php oil refine migrate --version=5
$ php oil refine migrate:down
$ php oil refine migrate:up
php oil g model test int:int[11], big_int:INT[11], decimal:decimal[5,2], big_decimal:DECIMAL[5,2], float:float[5,2] big_float:FLOAT[5,2] enum:enum['a','b','c'], big_enum:ENUM['a','b','c']
マイグレーションファイル生成
テーブル名の変更
$ php oil generate migration rename_table_users_to_accounts
テーブル作成
$ php oil generate migration create_users name:text email:string[50] password:string[125]
テーブルのの削除
$ php oil generate migration drop_accounts
カラムの追加
$ php oil generate migration add_bio_to_accounts bio:text
カラムの削除
$ php oil generate migration delete_bio_from_accounts bio:text
カラム名の変更
$ php oil generate migration rename_field_name_to_username_in_accounts
便利なジェネレートコマンド例
$ php oil g controller posts action1 action2 action3
$ php oil g model post title:varchar[50] body:text user_id:int
$ php oil g model post title:varchar[50] body:text user_id:int --no-migration
$ php oil g model post title:varchar[50] body:text user_id:int created_at:datetime --crud
$ php oil g model post title:varchar[50] body:text user_id:int --no-timestamp
$ php oil g model post title:varchar[50] body:text user_id:int --mysql-timestamp --created-at=my_created
$ php oil g model post title:varchar[50] body:text user_id:int --soft-delete
$ php oil g model post title:varchar[50] body:text user_id:int --soft-delete --deleted-at=mydeleted
$ php oil g controller posts action1 action2 action3 --with-viewmodel
$ php oil g scaffold monkey name:string description:text
$ php oil g admin project_entry title:string abstract:text full_text:text project_id:int is_draft:int order:int -s
$ php oil g task newtask cmd1 cmd2