symfony
synfony 1.4で 「symfony doctrine:data-load をしたら文字化けする」 と同僚に言われ。 問題はテーブル生成時にUTF8を扱うようになっていないためらしい。config/databases.ymlのデータベース接続定義で以下を追加する。 encoding: utf8 attributes: defaul…
変数に格納された文字列をhtmlタグを有効にした状態で出力したい時、以下の2つの方法があるらしい。 $sf_data->getRaw() $sf_data->getRaw('変数名'); メソッドの引数にESC_RAWを与える $変数の中身を保持しているクラス->get変数名(ESC_RAW); 前者が上手く…
テーブルに入っていないデータをフォームオブジェクトに突っ込んでisValid()しても Unknown record property / related component と言われてしまう。そんなときは、モデルのconstruct()でmapValueすれば良い。 ※下の例は、テーブルに含まれていないisReadRu…
概要 よくある 「入力→確認→完了」 のような処理の場合。 フォームオブジェクトのバリデーションを用いて入力項目をチェックする。 ハマったところ $form->isValid(); とすればバリデーション処理が走ってくれるが、これを確認画面で行なっても、入力項目に…
ファイルのアップロード sfWidgetFormInputFileを使って実装。 formオブジェクトはバリデーションのみに使う テンプレート側では、formタグに「enctype="multipart/form-data"」を追記(←忘れがち) 確認画面のアクションでは… form->getObject() でモデルを引…
formオブジェクト内でsetDefault()を使う。
formオブジェクト内で以下のようなバリデーションを設定していたとする。 上記の「tag_id」(チェックボックス。sfWidgetFormChoice)に関する条件を追加したい場合… formオブジェクト内 Action内
テンプレートの一部を共通化したいときに使う。 部品化する箇所(呼び出されるファイル) ファイル名の先頭にアンダースコアを付ける _menuPartner.php 呼び出し元のファイル こんな感じで呼び出す include_componentの引数…モジュール名、アンスコを取り除い…
ハマったところ 以下のようなエラーが。 Unknown record property / related component "news_id" on "NewsComment" ⇒NewsCommentモデルに定義されていないnews_idをtemplate側で呼びだそうとしていた。 更新日時のみを入れたい場合 getObjectメソッドを使え…
とあるテーブルからデータを引っ張ろうとしてたら、しきりに Column not found: 1054 Unknown column 'r.id' in 'field list', というエラーが出てうまくいかなかった。 対象のテーブルにidカラム(主キーとなるカラム)が無いことが原因だった。
Joinしたいテーブル news rel_news_tag 一致する箇所 news.id = rel_news_tag.news_id 参考にしたサイト http://d.hatena.ne.jp/shellcat/20101028/1288261492
参考URL http://www.symfony-project.org/reference/1_4/ja/05-Factories#chapter_05_user 確認作業 var_dump(get_class($this->getUser())); ⇒string(6) "myUser" ⇒正体はmyUserクラス。以下の場所にあった。 apps/アプリケーション名/lib/myUser.class.php
Doctrineの場合。 Doctrine_Manager::getInstance()->setCurrentConnection('データベース名');
symfony1.4のお話。 formクラスに以下のように記述。 Action側でこのように呼び出す。 ブラウザ側では、こんな感じで表示される。
cacheとlogディレクトリの権限を777にする symfony1.4.15からはデフォルトで777になっているっぽい。 webディレクトリ直下にシンボリックリンクを張る $ ln -s /Users/hchuno/sfproject_topic/lib/vendor/symfony/data/web/sf sf webディレクトリ直下の.htac…
フォームオブジェクトを手っ取り早くテンプレート側で表示させるために、 <?php echo $form; ?> …としていたが、これではスタイルシート等を利かせにくいので、デザインに手をくわえやすいように <?php echo $form['nickname']->render(); ?> のように各…
symfony1.4。
$ ./symfony generate:task registrant $ vim lib/task/registrantTask.class.php executeメソッドの中身 「setCurrentConnection」でデータベースの接続先を変更している。 バッチの走らせ方 例えば、 $this->namespace = 'batch' $this->name = 'registran…
symfony1.4のお話。 sfPHPViewを継承したクラスに切り替え処理実装。
symfony doctrine:build-model symfony doctrine:build-forms symfony doctrine:build-filter
symfony1.4のお話。「doctrine:build-schema」 を使えば、DBの情報を調べてschema.ymlを自動で書いてくれるとのこと。 早速試してみたところ… /Users/hchuno/sfproject% ./symfony doctrine:build-schema >> doctrine generating yaml schema from databas…
symfonyのダウンロード。 symfonyのサイトからtarファイルを落としてくる。 curl -O http://www.symfony-project.org/get/symfony-1.4.14.tgz バージョンの確認 symfony jackie:sfproject hchuno$ php lib/vendor/symfony/data/bin/symfony -V symfony versi…
(※symfony1.0のお話) functionalテストで、ブラウザに何が表示されているかを知るには… $browser->getResponse()->getContent(); print等を使えば、ブラウザのソースを目視確認可能。 print($browser->getResponse()->getContent());
現象 ./symfony test-functional [Exception] You must provide the app to test. 原因と解決策 原因⇒引数を指定していなかった 解決策(以下) ./symfony test-functional mycity
「divタグ等にidを振ってそれが存在するかどうか」が基本方針。
※symfony1.1でのお話。
SELECT文のLimit句と同じ処理を実装するには?? SQLだと… SELECT * FROM mychuno LIMIT 2, 3 Propelの場合 $Criteria->setOffset(2); $Criteria->setLimit(3); Doctrineの場合 $q->limit(2); $q->offset(3);
symfony1.1の場合… 構文 $ symfony module アプリケーション名 モジュール名 プロジェクトディレクトリ配下の… apps/アプリケーション名/modules/モジュール名 例 apps/mychuno/modules/index …というモジュール(indexモジュール)を作りたい場合、 $ symfony…
データベースのスキーマYAMLに、スキーマ情報を書く 以下のコマンドを叩く ./symfony propel-build-model