2009-01-01から1年間の記事一覧
symfonyのキャッシュについて、設定値の組み合わせによって変わる挙動を調べてみました。 はじめに・キャッシュのいろいろ symfonyで扱うキャッシュにはいくつかの種類があります。 アクションキャッシュ サーバー側。アクションの実行結果がキャッシュされ…
symfonyにはRuby on Rails由来のfixturesというサンプルデータを登録する仕組みがあります。The Definitive Guide to Symfony 16章 http://www.symfony-project.org/book/1_2/16-Application-Management-Tools#chapter_16_sub_fixture_file_syntax →「Fixtur…
dir関数の引数で指定したディレクトリに読み取り権限がなかった場合、falseが返ってくるのですが、この挙動についてPHPのソースを確認してみました。該当するのは、/ext/standard/dir.cです。 (PHP-5.2.9のソースで確認)203行目から、以下のような部分があ…
とあるシステムのコンテンツ管理画面にWYSIWYGエディタのxinhaを使っており、コンテンツ(PDFやWordファイルなど)のアップロード用にExtendedFileManagerプラグインを有効にしています。 このプラグインで、突然Fatal Errorが出るようになったので調べたと…
id:brtRiverさんのエントリ「http://d.hatena.ne.jp/brtRiver/20090412/1239563001」を見て、そういえばプラグインでreCAPTCHAのやつがあった気がしたので、試しに使って見ました。reCAPTCHAは、sfFormExtraPluginの一部として提供されているウィジェット/バ…
symfonyのsfFormでは、「姓・名」という2つの入力欄を1つのウィジェットとしてまとめて扱うことができます。 このような場合、特定のウィジェットをsfWidgetFormSchemaでまとめたものを1つのウィジェットとして扱います。 同じように、バリデータもsfVali…
AdminGeneratorで管理画面を生成すると、スキーマで外部キーを定義しているフィールドは自動的にプルダウンが生成されますが、特にマスターテーブルを用意しないようなコード値を持つフィールドは、「テキスト入力+is empty」入力欄が生成されてしまいます…
SynfonyのAdminGeneratorで管理画面を生成した時に、リストのフィルタ(検索)クエリの生成に使われる部分http://trac.symfony-project.org/browser/branches/1.2/lib/plugins/sfPropelPlugin/lib/form/sfFormFilterPropel.class.php#L187 getCo…
通常のフォーム(sfForm)で id 属性を変更する場合は、sfForm 継承クラスの setup メソッド内で、ウィジェットのコンストラクタに $attributes パラメータとして id 属性を渡します。 しかし、AdminGenerator で生成したフォームの場合、ウィジェットのコン…
アクションキャッシュを使用するとアクションのレンダリング結果がキャッシュされるようになりますが、このキャッシュは内部的なデータの更新などには全く依存せず、単に作成された時刻から●秒、という生存期間でキャッシュされます。 しかし、データの更新…
まあ当然といえば当然なのですが・・・ cache.yml にてアクションの結果をキャッシュするように設定した場合、厳密には「アクションの処理結果としてレンダリングされたテンプレート」がキャッシュされ、アクションの処理がスキップされるようになります。例…
symfonyで404ページをカスタマイズする場合、setting.yml 内の以下の設定を有効にして該当するアクションの出力をカスタマイズします。 #all: # .actions: # error_404_module: default # To be called when a 404 error is raised # error_404_action: erro…
http://www.ajaxray.com/blog/2008/03/08/php-universal-feed-generator-supports-rss-10-rss-20-and-atom/ PHPでATOM、RSS1/2フォーマットのフィードが超簡単に吐き出せる「FeedWriter.php」:phpspot開発日誌 PHPSPOT 開発日誌で紹介されていた RSS 出力ラ…
symfony の schema.yml 内に記述できるデータ型は Propel に定義されているものに限られます。 Propel で使えるデータ型は、以下のページの定数一覧で参照できます。http://propel.phpdb.org/docs/api/1.3/generator/propel-engine-database-model/PropelTyp…
setting.yml の standard_helpers 設定を有効にするには、sf_compat_10 モードを有効にしないといけない仕様のようです。→http://trac.symfony-project.org/ticket/5259 compat_10: on standard_helpers: [Partial, Cache, Form]