- 2008-11-29 (土) 4:14
- Akelos
前回の「Windows + Xampp環境にAkelosで簡易Blogを作ってみる(2)」からの続きです。
この記事はAkelos公式サイトの解説動画を参考にしています。
1). 多言語対応を試してみる
Akelosはデフォで多言語に対応するための仕組みがあるようです。インストール時にen,jaなどを入力したのはこのためだったようですね。app/locales/blog/jp.phpを開いて、$dictionary['The Akelos Blog'] に格納されている値を日本語の任意の文字列に変更してください。一覧ページのタイトルが変更されていることを確認できると思います。
ここで、「http://localhost/en/blog/listing/」を開いてみましょう。タイトルは元の「The Akelos Blog」であることが確認できると思います。en.phpもjp.phpと同じフォルダ内に存在します。この機能と.htaccessを使えば、多言語対応のサービスが簡単に作れそうですね。
2). ログをとる
config/config.phpを編集して、ログファイルを出力するように設定を変更します。、boot.phpのインクルード処理の前にAK_LOG_EVENTSを定義します。
define('AK_LOG_EVENTS', true);
include_once(dirname(__FILE__).DIRECTORY_SEPARATOR.'boot.php');
登録や更新処理を行うとlog/development.logが生成され、ログ出力されていることを確認できると思います。
3). ユニットテスト
ユニットテストを試してみます。test/unit/app/modelsに生成したモデルに合わせて、ユニットテスト用のファイルが格納されているので、testコマンドで実行してみます。
php test ./unit/app/models/post.php
コマンドが実行された後、1件の失敗があることを確認できると思います。

では、テストが通るパターンを試してみましょう。test/unit/app/models/post.phpを開き、test_should_be_added()関数を下記のように書き直します。
function test_should_be_added()
{
$Post = new Post(array('title'=>'First test post', 'body'=>'Say hello'));
$Post->comment->create(array('body'=>'hello!'));
$Post->save();
$Post->reload();
$this->assertEqual(1, $Post->comment->count());
}
また、test/unit/app/models/comment.phpのtest_should_be_added()関数の中身は全てコメントアウトし、app/installers/comment_installer.phpの初期コメント生成の処理もコメントアウトします。
//$Post = new Post(1);
//$Post->comment->create(array('body'=>"コメントをどうぞ。"));
//$Post->save();
再度、コマンドを実行します。
php test ./unit/app/models/post.php
今度はテストが通ったことを確認できると思います。
解説動画では、Akelosコンソールで更に何かをしているようですが、あまり重要そうではないので省きます。
まとめ
解説動画を元に実際にAkelosをインストールして、簡単なBlogの作成、ユニットテストまで行いましたが、バージョンの違いのせいか、ところどころ異なる点がありました。ただ、触っていて感じたことは、「噂どおりCakePHPより良さそうだ」ということです。2つのフレームワークの比較について、時間があればまた記事にしてみたいと思います。
コメント:0
トラックバック:0
- このエントリーへのトラックバックURL
- http://www.studio-kingdom.com/akelos/380/trackback