FuelPHPを 1.7 から 1.7.1 へアップデートしてみた。
Githubにあがっている「初めてのフレームワークとしてのFuelPHP」の追加情報を参考にしました。
本家サイトを見ると、色々なアップデート(アップグレード?)方法があるっぽい。
今回は、Gitを使った方法でやってみる。
ちなみにこのやり方、GitHubから Gitでダウンロードした場合のみにしか有効じゃないかも。
1.Gitでアップデート
Gitについては説明せんぞ。
わからないし。
参考ページ通りにやっていく。
まず、自分がFuelPHPをインストールした場所まで移動。
cd ~/workspace4.3.1/blog/
自分のブランチを確認する。
git branch
ブランチについて、サルでもわかるGit入門より
ブランチとは、履歴の流れを分岐して記録していくためのものです。分岐したブランチは他のブランチの影響を受けないため、同じリポジトリ中で複数の変更を同時に進めていくことができます。
つまり、以下のように表示された場合、1.7/master の横に「*」がついていれば、現在使っているのが FuelPHP1.7ということ。
1.6/master とかの横に「*」がついていたら、まずFuelPHPを 1.7までアップデートする必要がある。
1.3/master 1.4/master 1.5/master 1.6/master * 1.7/master
つづいて、GitHubからソースを取得。
git fetch origin
このコマンドについてはこのページが詳しい。
簡単にいうと、リモートリポジトリから最新情報をローカルリポジトリに持ってきている。
実際のファイルはまだ更新されない。
つづいて、現在の作業領域を一時的に保存する。
「git stash save」とする記述が多いが、省略できるらしい。
git stash
stashにも色々な引数がある。
実際に Gitを使う場合でも多用しそう。
つづいて、「本家の 1.7/master をマージします」とのこと。
実際のファイルを更新する、って意味でいいのか。
git merge origin/1.7/master
mergeについては、おサルさんのサイトをご確認ください。
つづいて、サブモジュールも更新する。
git submodule update
ごめんなさい。
これ何のためにやってるか理解できませんでした。
最後に一時保管しておいた作業領域を戻す。
git stash pop
これで、退避した作業領域の中で最新のものが戻る。
戻った。
2.ErrorException [ Fatal Error ]:Interface ‘Sanitization’ not found
で、バグ出てないかなーって見てたらこんなエラーが。
ErrorException [ Fatal Error ]:Interface ‘Sanitization’ not found
PKGPATH/orm/classes/model.php @ line 28
Sanitizationっていうのは、FuelPHP1.7.1で新しく追加された機能っぽい。
FuelPHPの神のブログより
Sanitizationインターフェイスが導入されました。これは、ビューに渡すオブジェクトが自分自身でいわゆるサニタイズ処理をするためのインターフェイスです。ORMとModel_Crudで使われています。
エラーから、新しく入った sanitizationがOrmパッケージにはないってこと?
応急処置でOrmクラスからDBクラスを使うようにした。
DBクラスは大丈夫。
このエラー解決できなかった。
そもそもエラー出るの自分だけ?
普通にダウンロードしてアップデートするパターンをやってないのでそっちなら大丈夫かも?
参考
fuelphp1st/UPDATE_FUELPHP_1.7.1.md at master · kenjis/fuelphp1st · GitHub
コメント