パッケージ開発時のDBテーブルの変更について

2016年1月31日 at 18:44

パッケージのバージョンアップしたときにブロックのDBのテーブルにフィールドを追加したいのですが、
どのようにすればいいでしょうしょうか?
もし参考になるURLあれば、教えてください。

タグ:

Re: パッケージ開発時のDBテーブルの変更について

2016年2月1日 at 19:38
テーブルの中に、フィールドを追加するだけで、db.xml で定義をしているだけであれば、db.xml にフィールドを追加してあげるだけで大丈夫です。

ただ、追加したテーブルの既存のブロック情報にデフォルトの値を入れてあげないといけないとか、そういうことになると、パッケージの controller.php の upgrade() に何らかの処理を追加する必要があります。

普通は、そういう必要が無いように null だったりした場合の処理を追加したりします。

カスタムなupgrade メソッドを使用する場合時は parent:: をきちんと前後に宣言して上げる必要があります。

って説明でわかりますかね?
 

Re: Re: パッケージ開発時のDBテーブルの変更について

2016年2月1日 at 22:27
わかります。ありがとうございました。