モノノフ日記

普通の日記です

symfony

sfMemcachePluginでcacheのlifetimeが有効になってなかったので修正した

symfony 1.1からはデフォルトで対応してるmemcachedですが、1.0.XはsfMemcachePluginというプラグインを利用して使います。 導入方法については下記ページを参照してください。 memcacheをsymfonyから利用してみる | ueblog Windows+PHP+memcached+symfony |…

convertUrlStringToParameterの仕様変更

symfony 1.0.16で動作してたアプリが1.0.17だと動かなくなってたページがあったので調べてみると、原因はconvertUrlStringToParameter関数の仕様が変わってるのが原因ぽかった。(該当チケット)convertUrlStringToParameterが定義されてるファイルは/sf_symfo…

symfony1.2のロードマップ

1.1が正式リリースされたばかりですが、もう1.2のロードマップが公式ブログで発表されてます。 symfony 1.2 roadmap - Symfonyザックリと意訳すると、 1.2の新要素 admin generatorを新しいFormフレームワークで書き直す。ゴールはよりカスタマイズでき、フ…

Yahoo! Answerがsymfonyで作り直されてた

symfony Web PHP Framework » Blog » Yahoo! Answers powered by symfonyにYahoo! Answersの再構築にsymfonyが使われていることが紹介されてます。Yahoo! Answersは1億3500万以上のユーザがいて、5億1500万のアンサーがある巨大なWebアプリであり、なぜsymfo…

symfony1.1 beta3を導入してみる

ちょっと試しにローカル環境に導入してみました。 導入にはPEARからインストールせず、サクっと試せるsf_sandboxを利用してます。sf_sandboxは必要なライブラリとか全部込みでワンパッケージ化されていて、webルートディレクトリに置けばそのまま動く便利モ…

symfony1.1 beta3リリース

symfony勉強会のあった当日にリリースされてた模様です。斜め読みで訳した変更点をまとめておきます。適当に訳してる所もあるので注意w 詳細はsymfony Web PHP Framework » Blog » Symfony 1.1 beta3 is outを参照してください。 変更点 Windows環境下でsfF…

symfony1.1 Beta2リリース

Symfony 1.1 Beta 2 released - What's new? - SymfonyいつBeta1が出たか知らないんですが、Beta2がリリースされてます。 変更点が多そうなのであとからじっくりリリースノート読んだら追記します。 1.0との互換性 高い互換性が保証されてるみたいです!以下…

symfony 1.0.12にupgradeするときにつまずいた点

2ヶ月ぶりに30以上のチケットを解決したsymfony-1.0.12(安定版)がリリースリリースされました。重要なセキュリティの問題の解決および、Windowsプラグインの問題が解決されているのでアップデートをお勧めするとのことです。 http://blog.symfony.jp/ という…

第一回symfony勉強会告知キタ

第一回symfony勉強会 イベント概要:第一回symfony勉強会を開催します。日時: 2008年4月11日(金) 18:30〜21:00会場: 株式会社ディノ セミナールーム(〒150-0002 東京都渋谷区渋谷3-13-11 渋谷TKビル9F) http://events.php.gr.jp/event.php/event_show/40 これ…

symfonyのModel

g:catalyst:id:dann:20080305:1204732091やg:subtech:id:miyagawa:20080306:1204761778を読んでsymfonyで例を考えてみた。自分がsymfony使ってコード書くときはアプリのコントローラにDBアクセスする処理は直接書いてない。 Model抽象化したクラスにラッパー…

photohitoというサイトを作りました

今の会社に転職してから、ずっと開発担当してたサイトが本日公開されました。 photohitoという写真共有サイトです。公開したと言っても、まだαリリースで機能としては最低限のことしかできません。 既存サイトには無い点は 一眼カメラのレンズ情報を画像にメ…

sfSslRequirementPluginの問題点

symfonyでSSLにしたいアクションをyamlで指定できる便利なプラグインsfSslRequimentPluginでハマってます。 http://trac.symfony-project.com/wiki/sfSslRequirementPluginどうやらhttpとhttpsの標準ポートである80番と443番以外を使ってるとリダイレクト無…

Ajaxヘルパーの挙動

symfonyはprototype.jsとscript.aculo.usがフレームワークに統合されてて Javascriptヘルパーから呼び出せます。(Railsにあるヘルパーとほぼ一緒、ていうかパクリ)でも、どのヘルパーがどのAjaxクラス呼ぶのか公式マニュアル細かく書かれてないので調べてみ…

sfSslRequirementPlugin

symfonyでSSLを扱うときに便利なプラグイン Plugins | sfSslRequirementPlugin | 2.0.0 | symfony | Web PHP Frameworkaction単位でsslの設定がymlファイル一発で出来ます。

symfonyを1.0.11にupgradeしようとしたときのメモ

なんかすんなりupgradeできなかったのでメモっとく。 普通にPEARからupgradeしようとしたらエラー $ sudo pear upgrade symfony/symfony downloading symfony-1.0.11.tgz ... Starting to download symfony-1.0.11.tgz (1,912,922 bytes) ..................…

Propelのschemaをdoctrineのschemaに変換する方法

公式ページのWikiにありました ConvertPropelSchemaToDoctrineSchema - symfony - Trac試してないけどxml形式のschemaにしか対応していないみたいです。

Criteria回りのチートシート

http://andreiabohner.files.wordpress.com/2008/01/sfmodelcriteriacriterionrsrefcard_enus.pdf symfony cheat-sheet: Criteria/Criterion/RS « /webdevで公開されてます。 クラスメソッドが一覧になってるので手元に置いておくと便利かも。

sfPropelPranoidPluginが動作しないときの対策

複数のデータベースを使うようにしたら動かなくなってしまったので調査。 公式HPのチケットでdiffが公開されとりました。修正する箇所 /plugins/sfPropelParanoidPlugin/config/config.phpの9行目 array('sfPropelParanoidBehavior', 'doSelectRS'), +'Peer…

Unitテスト内からPropel接続を使う

LimeからPropel接続するときはこれで大丈夫(なはず)。 autoloadしたいディレクトリを指定したい場合はinitSimpleAutoload()を使えばOK。

symfonyでimageControllerを作成してみた

一緒に仕事をしているデザイナーさんからのヒントで作ってみました。 URLのパラメータにfilenameとwidthとheightとfiletypeを指定するとサムネイル画像を作成してくれるものです。 簡単にするため画像はimagesディレクトリに格納されているものとします。 使…

sfLightboxPluginとキャッシュ

sfLightboxPluginを使って画像を表示させてるページをキャッシュすると キャッシュが無い場合だと普通にjavascriptが動くけど、 キャッシュが有る場合だとキャッシュ画像を参照しちゃってlightboxが動いてくれない。 どうしたもんか。キャッシュ使わないよう…

グローバルなCode Fragments

symfonyの機能としてCode Fragmentsが提供されてます。 平たく言えば「_foobar.php」とかをincludeして使うページ間の共通テンプレートを作ることです。articleモジュールのtemplatesディレクトリに「_title.php」ってテンプレートを作成してやったときの呼…

PropelでIS NOT NULLする時の注意点

addで条件を指定するときに第2引数をnullにしないと上手く通らない罠。 これは忘れやすいぞ。。。というか仕様が変だろ。 OK getRequestParameter('id'); $c = new Criteria(); $c->add(TestPeer::ID, $id); $c->add(TestPeer::NAME, null, Criteria::ISNOTN…

symfony+jQueryでX-JSON試した

X-JSONあんまりよくわかってなかったんですが、 色々試した結果、jQueryだとX-JSON取得できないんじゃないの?という事にした。普通にコントローラでJSON形式の配列作って、 Content-typeをtext/javascript+jsonにしました。Content-typeについてはJSONとCon…

symfonyでGoogleMapsを使うページだけにAPI Keyを埋め込む

slot使えばできます。 layout.phpにスロット読み込む記述をして、 実際にJavascript書くテンプレートでスロットを定義してやればOK。 layout.phpの一部 <head> <link rel="shortcut icon" href="/favicon.ico" /> …</link></head>

propelでGroup byしたいとき

http://d.hatena.ne.jp/ykog/20070323/p3が参考になった。 BasePeerに対してdoSelectするのね。

追加したプラグイン

sfCSRFPlugin - symfony - Trac http://trac.symfony-project.com/wiki/sfCSRFPluginこんな便利なプラグイン見つけた。symfony1.1からはコアに含まれるみたい。