symfony
symfonyで直接SQLを書く事は珍しい事ではない 今日もSQLを直接書くよ! $sql="select * from hoge where id in(?,?,?)"; $sth = $con->prepare($sql); $sth->execute(1,2,3);しかし、こう書いても返ってくるのはidが1のレコードのみ。 なぜか。 bindされた後…
symfony1.1以上でactionsが長くなってきたので分けたいと思ったので分けてみた。すると hogeAction::execute() must be compatible with that of sfComponent::execute() inというのが出た。 hogeAction extends sfActions { public function execute() { } …
./symfony plugin:publish-assets
public static function getCount() { $con = Propel::getConnection(); $stmt = $con->prepare("SELECT sum(foo) as count FROM var"); $stmt->execute(); while($row = $stmt->fetch()) { $r = (int) $row['count']; } return $r; }こんな感じ
デフォルトだとドクトリン。 php /symfony/data/bin/symfony generate:project projectname --orm=propel
★目的 ./symfony propel:build-modelなんかするとべろべろっとファイルが自動生成されるわけだが、何も変更のないbaseファイルまで更新される。 その更新内容はなんと自動生成の日付だ。 そんなのけっこうどうでもいい。やめさせよう★調べた symfony/lib/plu…
$c1 = new Criteria(); $c1->add(CommentPeer::RATING, 5, Criteria::NOT_EQUAL); $c2 = new Criteria(); $c2->add(CommentPeer::RATING, 5); BasePeer::doUpdate($c1, $c2, $con);
symfonyで国際化するときに使用されるファイル。xliffといってもxmlだが、長い文章を翻訳したいとき、どうしても改行が登場しますよね。どこぞのテンプレ ふがふが'); ?><trans-unit> <source>ほげほげ<br />ふがふが</source> <target>hogehoge<br />fugafuga</target> </trans-unit>こういったのを書いたが、まったくもって動かない…
$this->getContext()->getI18N()->__('something');
action内で $this->getResponse()->setTitle('foovar');とするだけスタイルシート追加 $this->getResponse()->addStylesheet('newstyle');ジャバスクリプト追加 $this->getResponse()->addJavascript('newscript');最初に読み込ませる $this->getResponse()-…
sfFormでエラーメッセージを国際化してみる。今回1点ハマったのは、sfFormをそのまま出力すれば問題なく辞書で設定したものが出るのだが、いかんせん見た目を変えたいとき、$hogeform['name']->getError()などをしたいわけですよ。しかしそう書いただけでは…
★現象 sfValidatorAndを使うと、requiredのエラーメッセージが「Required」から変更できない $this->setValidators(array( 'email' => new sfValidatorAnd( array( new sfValidatorEmail( array(), array( 'invalid' => '正しいメールアドレスを入れてね' 'r…
入らないです。パスワードだから $this->widgetSchema['password']->setOption('always_render_empty', false);こう書けば入るけど。
管理画面を作っていて以下のエラーがでて見れない Data file for "sf" was not found.sfという言語を探してそんなのないよとなっている感じ。 表で国際化の設定をしてるからかなと思いいろいろいじった。 例えばsetting.ymlのdefault_cultrureをjaにしてみた…
sfFormでラジオボックスを作る時。 'mailmagazine' = new sfWidgetFormSelectRadio(...と書いていたわけだが、デフォルトで「はい」にチェックを入れておきたい。 探した結果。 new sfWidgetFormSelectRadioする時ににデフォルトの値を入れる部分は書けない …
symfony1.4で国際化の手順まずは言語の管理 symfonyにはユーザカルチャというものが存在しており、そこに言語の種類を入れます $this->getUser()->setCulture('ja'); echo $this->getUser()->getCulture(); デフォルトの言語を設定する // apps/frontend/con…
sfProjectConfiguration::getActive()->loadHelpers(array('xxx', 'xxxx'));もしくは sfContext::getInstance()->getConfiguration()->loadHelpers('xxx');
ログを残したい sfContext::getInstance->getLogger()->info('foovar');と書けばログが残る。 infoの部分はいろいろと種類があって、errだと種類がエラーになったりする 詳しくはsfLogger参照である
$c->add(HOGEHOGE::CATEGORY, null, Criteria::ISNOTNULL);
$sf_data->getRaw('name');$person->getRawValue()->getContent();
symfonyで使えるsfPropelPager 便利でよいのだが、group byをするとトータルの数がうまく取得できず、group byした総計が返ってこない。 それを回避するためのtips public static function getSomething($item_id, $page) { $c = new Criteria(); $c->add(se…
$page = $request->getParameter('page', 1); $c = new Criteria(); $c->add(self::ID, 123, Criteria::EQUAL); $c->add(self::IS_DELETE, false); $pager = new sfPropelPager('User', 5); #model名,表示数 $pager->setCriteria($c); $pager->setPage($page…
php symfony generate:task xxxxx
タスクを作っただけではできない。 new sfCommandOption('application', null, sfCommandOption::PARAMETER_REQUIRED, 'The application name', 'xxxxx'), xxxxxの所にアプリケーションネームを入れると読み込めるようになる。 指定してあげないとだめなので…
symfony1.2は素敵な事に、アプリケーションを作る時にcsrf対策をつけれる。 すごい便利なcsrf対策。少し詳しく見てみた。フォームでCSRFを防ぐために、フォームの繊維する画面では常にhiddenでCSRF_TOKEN を持ちまわしている。これのおかげで値が違ったとき…
City: city_: name: test_ build_at: 1990-10-11 これが上手く入らない。nameがtest_1 build_at:1990-10-11のように繋がってはいってしまう。なぜか City: city_: name: "test_" build_…
symfony1.2で管理画面を作るためにadmin generatorを使いました 簡単に作れて自分でカスタマイズもできるっていいですね。しかし、今回問題が発生しました 検索でフィルタをかける部分を自分でカスタマイズしたのですが フィルタをかけようとするとエラーが …