Agavi

FormPopulationFilter のバグっぽいもの

severity が INFO / SILENT / NONE なエラー(エラーメッセージを出力したくない)も insertErrorMessage してしまうようだ。これじゃ AgaviOroperatorValidator が使い物にならない!というわけで、AgaviFormPopulationFilter.class.php の265行目を、 $all…

PHP Framework のベンチーマーク

FrOSCon なるイベントの発表の一つに、各種 PHP Framework の "Hello World!"ベンチマークがあったみたいです。気になる結果は、 CakePHP 1.2.0rc2 : 25.88 trans/sec Symfony 1.1 : 100.63 trans/sec Solar 1.0.0alpha1 : 271.18 trans/sec Agavi 1.0-be…

XPath日本語チートシート

FormPopulationFilterの設定を作るときに便利だよね、なチートシート。http://pearl-white.hp.infoseek.co.jp/xpath/

FormPopulationFilterのもっとも基本的(多分)な使い方

%core.config_dir%/global_filters.xml <configurations xmlns="http://agavi.org/agavi/1.0/config"> <configuration> <filters> <filter name="FormPopulationFilter" class="AgaviFormPopulationFilter"> <parameter name="methods"> <parameter>write</parameter> </parameter>…</filter></filters></configuration></configurations>

PHPLondon Agavi talk video

音声+スライドスライドだけ[訳] 皆さんこんにちは。(略) スライドをざっと見た感じ、ただのイントロダクションなのでまあスルーでいいか。

settings.xml のお行儀のよい使い方

もともとある <settings> の中にアプリケーション独自の設定項目(たとえば site_name)を追加してしまうと、(意味的には明らかに core じゃないのに core.site_name になってしまって)気持ちが悪いので、prefix 属性を使う。 <settings prefix="app."> <setting name="site_name">サイト名</setting> </settings> AgaviConfig::get('app.site_</settings>…

Agavi-0.11 系での ReturnArrayConfigHandler の使い方

%core.config_dir%/config_handler.xml <configurations xmlns="http://agavi.org/agavi/1.0/config" parent="%core.system_config_dir%/config_handlers.xml"> <configuration> <handlers> <handler class="AgaviReturnArrayConfigHandler" pattern="%core.config_dir%/hoge.xml">…</handler></handlers></configuration></configurations>

Agavi で session.use_trans_sid を使う

php.ini, ini_set() など php の設定で session.use_trans_sid を On にしたところ、若干気持ち悪いことになった。 Agavi の Routing::gen() は、URLクエリパラメータのセパレータに &amp; を使うのだけど(こっちが正式っぽい)、session.use_trans_sid は …

agavi-0.11系で validator 設定ファイルを効率的に書くよ(改)

XInclude (+ XPointer + XPath) を使うようにしてみた。 %core.config_dir%/validate/common.xml <configurations> <configuration> <validators> <validator name="page_id" class="AgaviNumberValidator"> <argument>page_id</argument> <parameter name="method">read writ…</parameter></validator></validators></configuration></configurations>

agavi-0.11系で validator 設定ファイルを効率的に書くよ

例えば、%core.config_dir%/validate/page_id.xml を以下のように作成。 <configurations> <configuration> <validators> <validator class="AgaviNumberValidator"> <argument>page_id</argument> <parameter name="method">read write</parameter> <parameter name="required">…</parameter></validator></validators></configuration></configurations>