Skip to content

tiichat/Migrations

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TiiMigration plugin

CakePHP3(Phinx) の Migration を利用し、view や stored procedure を bake するためのプラグイン。

Requirements

  • CakePHP 3.4+

Installation

現状、composer に対応できていないので、手動でインストールする必要があります。

まず、plugins に、tiichat\migrations フォルダを作成しチェックアウト、または、ダウンロードします。

composer.json の autoload に、"Tiichat\\... の行を追記します。

    "autoload": {
        "psr-4": {
            "App\\": "src",
            "Tiichat\\Migrations\\": "./plugins/tiichat/migrations/src"
        }
    },

ターミナルで、以下コマンドを実行し、オートローダーを再作成します。

> composer dumpautoload

config\bootstrap.php に、プラグインをロードする記述を追記します。

Plugin::load('Tiichat/Migrations');

Usage

まず、マイグレーションファイルの作成ですが、通常の migration と同じ様に、tii_migration コマンドを叩きます。ビューの場合は、ViewBars の様に "View" を頭につける必要があります。ViewBars の場合、view_bars という名前でビューを作成します。ビューも複数形にしておかないと、bake で model など作成する際に、規約違反となってしまうので注意が必要です。

$ROOT$> bin\cake bake tii_migration ViewBars

これで、View のマイグレーションファイルと、DDL ファイルが生成されます。

\config\Migrations
		20170519014643_ViewBars.php
\config\Migrations\ddl
		view_bars_1.ddl

初回の DDL ファイル view_bars_1.ddl の中身は空なので、 作りたいビューの DDL を記述します。ただし、create view view_bars as までは、マイグレーションファイルの方に記述しているので(Drop との整合性を考えてそうしてみました・・)、DDL には、select ... から記述します。

作成したビューに変更が入るときは、再度 bake します。

$ROOT$> bin\cake bake tii_migration ViewBars

すると、

\config\Migrations
		20170519014643_ViewBars.php
		20170519015211_ViewBars.php
\config\Migrations\ddl
		view_bars_1.ddl
		view_bars_2.ddl

こんな感じになるので、view_bars_2.ddl を編集します。

マイグレーションは、普通に実行してあげればOKです。

$ROOT$> bin\cake migrations migrate

About

CakePHP3 Plugin : Extend Migrations and create migration files for view and procedure

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages