Akelos

Akelos0.9がきてるっぽいのでメモ(設定ファイル編)

久しぶりにアップデートしたらAkelosが待望?の0.9(REV.1196)になってたのでCHANGELOGの内容をメモ。今回は設定ファイルをベースに変更内容を追いかけてみる。 YAMLベースの設定ファイルが使えるようになった。 AkelosでもようやくYAML形式の設定ファイル…

Akelosで作ったアプリケーションを本番環境に配置する

Akelosでアプリケーションを作って、いざ公開する際に本番環境が以下のいずれかに当てはまる場合は正常に動作しない場合があるので注意が必要。 mod_rewriteが使えない。 公開URLが「http://[DOMAIN_NAME]/」じゃない。 「/public」を公開ルートに設定できな…

Akelosで作ったアプリケーションを本番環境に配置する

Akelosでアプリケーションを作って、いざ公開する際に本番環境が以下のいずれかに当てはまる場合は正常に動作しない場合があるので注意が必要。 mod_rewriteが使えない。 公開URLが「http://[DOMAIN_NAME]/」じゃない。 「/public」を公開ルートに設定できな…

フィルタチェーンが気持ち悪いのでActiveRecordをオーバーライドする

Akelos使ってるとバリデータの流れが気持ち悪いと思うことがある。 ActiveRecordでsaveを行うと順々にコールバックメソッドを評価してレコードが登録されるわけだが、メソッド名から想像する順序と実際に実行される順序が違いすぎて困る。ちなみにソースコー…

Akelosでモジュールを使う

一般的にWEBアプリで管理画面を作る場合、通常のURLとは違い http://〜/admin/[controller]/[action]というURLを使いたくなる。Akelosでコレを実現する場合はとりあえずモジュールを使えばおk。たとえば上記の例の場合、まずURLルーティングを行うためにcon…

とりあえず

ひと通りAkelos把握したので今度のプロジェクトで提案してみる。 それにしてもAkelosユーザ少ないなぁ。CakePHPよりかよっぽど美しいと思うんだが。まぁAkelos使うくらいならRails使うわっていう感じかもね。ここらで参考リンクをひととおりまとめておくので…

hasAndBelongsToManyのバグ

Akelosでn対mのモデルを扱うときに新しくjoin_tableにレコードを追加したい場合多分以下のようにするのだと思う。 find(1); $user->group->add($group_model->find(array(1,2,3))); $user->save(); ?> 結果join_tableには以下のように追加されるはず。 SELEC…

Akelosでmysqlの文字化けをどうにかする

Akelos+mysql4.1以降の組み合わせでデータベースで日本語を扱う場合、mysqlの文字コードの設定次第で文字化けしする。というかこれはakelosに限った話ではなくて、mysql4.1以降の場合「SET NAMES xxx」を実行しておかないと文字コードが正しく扱われない。と…

Akelosのセッション管理をDBで行う

AkelosでセッションをDBを行う場合、現バージョン0.8なら以下のような感じになる。 まず、データベース上にセッション管理テーブルを作る。Mysqlならこんな感じ CREATE TABLE `sessions` ( `id` CHAR(32) PRIMARY KEY , `value` TEXT NOT NULL , `expire` DA…

Akelosで多対多(has_and_belongs_to_many)のテーブルを使う

引き続きAkelosのモデル周りの動作テスト。Akelosで多対多のテーブルを使いたいとき、Railsと同じくhas_and_belongs_to_manyが使える。使い方は簡単でたとえば以下のような感じでテーブル設計がされている場合 +-------+ +--------------+ +--------+ | user…

Cake風にコンポーネントを使う

CakePHPの場合、コントローラで Session->read('login'); } } みたいな感じでコンポーネントを使うことができた。これはちょっと便利だったのでAkelosでも使えるようにする。 app/application_controller.php

まとめてmigrateをおこなう

Akelosでモデルのmigrateをするときにまとめてできないのがめんどくさいので、一括してmigrateを行うインストーラを作って対応。 app/installers/all_installer.php

AkActiveRecordを試す

昨日からAkelosを使い始めた。AkActiveRecordでスラスラいけるかと思ったらそうでもないらしい。 とりあえずいろいろと挙動を覚え書き。 多対1 has_many belongs_to +---------+ +-------+ | users | | roles | +---------+ +-------+ | id | +--| id | | na…

Akelosを使う

新しいプロジェクトで一瞬CakePHPを使おうとしたけど、なんか気持ち悪いのでやめることにした。 ということでどのフレームワーク使おうかという提案をしなきゃいけないのでいろいろ調べてたらAkelosが良い感じに気持ちがよさそうなので使ってみる。日本語の…