[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 11/12 20:33 / Filesize : 217 KB / Number-of Response : 989
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

フランチョスとsymfony



1 名前:nobodyさん mailto:age [2008/01/24(木) 21:26:07 ID:???]

www.symfony-project.org/
コードスニペット
www.symfony-project.org/snippets/tag
プラグイン
trac.symfony-project.com/wiki/SymfonyPlugins

どうぞ つ

256 名前:nobodyさん mailto:sage [2008/07/16(水) 19:22:49 ID:???]
Doctrine使ってるよ。
クラス定数を書かなくていいので楽だよ。

でも、使おうと思ったらどんなORMでも使えるよね。


257 名前:nobodyさん mailto:sage [2008/07/16(水) 20:01:51 ID:???]
俺もTimpocorine使ってる

258 名前:nobodyさん [2008/07/17(木) 01:53:41 ID:r8Tb5l59]
FWを覚えるのて長く使えないから、無駄だよな
C++,C#覚えてた方が無駄じゃないよな

259 名前:nobodyさん [2008/07/17(木) 09:27:50 ID:r8Tb5l59]
おまいらがsymfonyを習得できた頃には
また新しい超人気のFWが登場するだろうw
短期で習得しないと回収できないよ、この業界はね


260 名前:nobodyさん mailto:sage [2008/07/17(木) 10:55:21 ID:???]
C++というか、Cを勉強しておくのは役に立つぞ。
symfonyを勉強しておくのもCを勉強おくのと同じくらい役に立つが

とりあえずCを勉強しておけ。

261 名前:nobodyさん mailto:sage [2008/07/17(木) 13:50:12 ID:???]
PHP
C++
C#
C

そして、いよいよsymfonyの出番だ! 

おかしくね?

262 名前:nobodyさん [2008/07/17(木) 19:13:50 ID:6/yjc+oz]
逆だよ、逆。
Cってのはどっちかというと、コンピュータ(ハード側)に則した言語なんだ。
考え方が異質だけと単純。

それに対して、PHPとかsymfonyになってくると人間側の「もっと簡単に、省ける事は空気読んで省けいて書けた方がいいよね」になってくるんだよ。
その為、見た目は簡単だけど、複雑になってる訳。

単純な方から複雑な方へ勉強していった方が理解が早い・・・はずだと思うんだ。

263 名前:nobodyさん mailto:sage [2008/07/17(木) 22:47:02 ID:???]
C++なんか覚えるなよ…
あんな欠陥言語は早いとこ絶滅させないと

264 名前:nobodyさん mailto:sage [2008/07/17(木) 23:47:00 ID:???]
Cなんてとうの昔に忘れました



265 名前:nobodyさん mailto:sage [2008/07/18(金) 10:09:26 ID:???]
>>263
なぜ、そう考えるのかは分かるんだが・・・
もし、C++を理解しながら、ありゃダメだって思ってるんなら、一度boost::spiritとかいじってみるといいかもよ?

言語というより、パズルとして楽しめるw

266 名前:nobodyさん mailto:sage [2008/07/18(金) 20:46:09 ID:???]
テンプレートが出てきたところからC++はカオス化してしまったな。

auto_ptrとその仲間の機能をすべて答えなさい。
とかやったら輪ロスすぎるww

267 名前:nobodyさん mailto:sage [2008/07/18(金) 22:11:51 ID:???]
PHPなら仕事ないな。C++ならまだ仕事はある。

268 名前:nobodyさん mailto:sage [2008/07/25(金) 12:10:11 ID:???]
sfWidgetFormSelectRadioなんですが、
選択項目をタグ単位では取り出せない仕様なんですか?
ラジオボタンによくある

◎個人
 苗字[  ]名前[  ]
◎法人
 法人名[  ]
 担当者名[  ]

みたいなものを実装したいのです。
個人/法人区分じたいもDBに保存したいので、
フォームクラスとは別に生成するわけにも行きませんし……

横並びと縦並びになる場合は自作のformatter()関数を作って対処したのですが、
これもデフォルトではulタグ前提になっていて、なんか不便ですよね。

269 名前:age [2008/07/28(月) 21:14:47 ID:L1kOSCp5]
sfWidgetFormSelectRadioのcheckedと
sfWidgetFormSelectのselectedの指定って
どうやってやるんですか?
ググっても見つからないんで1.1使ってる人教えてください

270 名前:nobodyさん mailto:sage [2008/07/29(火) 13:28:16 ID:???]
>>269
アクションクラスで
$this->form->setDefault('name', 'value');
したら自動で入らない?

フォームクラスでsetDefaults([連想配列A])して
アクションクラスでもsetDefaults([連想配列B])していたら、
Bだけが有効になるっていうハマりがあったな。

sfFormの定義を見たら、
setDefault()は$nameと同じ要素だけ上書きしているが、
setDefaults()だとマージしないで配列ごと上書きしていた。
自前でgetDefaults()してからarray_merge()するか、
setDefault()使っとくか。

271 名前:age mailto:sage [2008/07/29(火) 17:50:14 ID:???]
>>270

できました、ありがとうございます。

もう一つ質問させてください。
1.0での
<?php echo select_tag('hoge', options_for_select(array('a', 'b', 'c'), null, array('include_custom' => '選択してください'))) ?>
みたいな選択する配列ではない文字(ここでは選択してください)
をデフォルトで表示するにはどうやって設定するのですか?


272 名前:nobodyさん mailto:sage [2008/07/29(火) 19:15:55 ID:???]
>>271
sfWidgetFormSelectを追いかけてみたけど、
include_customに相当する機能はないね。
array(''=>'選択してください')を連結しとくしかないんじゃ?

273 名前:age mailto:sage [2008/07/31(木) 09:43:53 ID:???]
>>272

ありがとうございます。
やっぱりできないんですね、仕方ないので言われた通り連結しときました。

FormやMailに関しての参考が少ないのもあるんですけど1.1になって
使い勝手が悪くなったと思うのは俺だけですかね

274 名前:nobodyさん mailto:sage [2008/07/31(木) 14:58:57 ID:???]
OOPのデメリットだろうね。
保守性はあがるけど、開発効率はさがる。
とくに一人とか少人数でやってる場合。
一人でやってるなら無理にsfForm使わなくて独自orQuickFormとかを使ったほうが
効率はいいんじゃないかな。



275 名前:nobodyさん mailto:sage [2008/07/31(木) 15:45:33 ID:???]
>>274
それもフォームの形式や頻出度合いによる

276 名前:nobodyさん mailto:sage [2008/07/31(木) 16:41:47 ID:???]
sfFormってモデルとかならず結びついてんの?
テラ糞フォームwww

277 名前:nobodyさん mailto:sage [2008/07/31(木) 17:06:00 ID:???]
>>276
何railsと勘違いしてんの?
頭悪いにもほどがあるだろ…

278 名前:nobodyさん mailto:sage [2008/07/31(木) 18:44:32 ID:???]
>>275

DBの構造とフォームの内容が一致している場合の
手間の少なさは特筆物だけど、
欄Aに入力があったら欄Bを格納、無しなら欄Cを格納、
のように場合わけの必要があると、
とたんに自作ValidatorSchema作らされたりして難しくなるよな。

279 名前:nobodyさん mailto:sage [2008/07/31(木) 19:23:28 ID:???]
>>278
sfFormの構造理解してなくねぇ?

280 名前:nobodyさん mailto:sage [2008/07/31(木) 19:28:10 ID:???]
汎用性の無い例外的な処理なら、わざわざValidatorSchemaつくらんでも、
Formクラス内に実装しちゃえばいい。

QuickFormなんか使うよりはよっぽど楽。
DBの構造とフォームの内容が一致は大して関係ない。

どちらかというと、フォーム同士の組み合わせが複雑に絡み合うエンタープライズ分野向きだわな。

281 名前:nobodyさん mailto:sage [2008/07/31(木) 19:30:23 ID:???]
ActiveRecordとAdminGeneratorとsfForm混同してごっちゃになっちゃったんだねきっと

282 名前:nobodyさん mailto:sage [2008/07/31(木) 19:40:00 ID:???]
propel:build-forms=sfFormだと思ってるんだろ

283 名前:nobodyさん mailto:sage [2008/07/31(木) 19:44:40 ID:???]
>>279

たしかに理解できてないのかもしらんが、

[×]←チェックボックスA
 [ ]←チェックボックスB
  「  」←テキストボックスB
 [ ]←チェックボックスC
  「  」←テキストボックスC

たとえばこんな状況で、

・AがチェックされてなければBやCの状態は問わない
・AがチェックされていたらBまたはCのいずれか一方に少なくともチェックが必要
・BおよびCにチェックが入っている場合のみ、対応するテキストボックスの中身を評価する

こんな記述をしようとしたら、
入力値評価用のバリデータ自作した上で、
ポストバリデータがsfValidatorAndとsfValidatorOrでスパゲッティになるんだが、
漏れが気が付いてないだけで、もっと上手いやり方があるのかい?

284 名前:nobodyさん mailto:sage [2008/07/31(木) 19:46:04 ID:???]
>>283
具体的にQuickFormでのコード書いてくれない?
おれsfFormで書くから



285 名前:283 mailto:sage [2008/07/31(木) 19:46:41 ID:???]
×・BおよびCにチェックが入っている場合のみ、対応するテキストボックスの中身を評価する
○・B and/or Cにチェックが入っている場合のみ、おのおの対応するテキストボックスの中身を評価する

286 名前:283 mailto:sage [2008/07/31(木) 19:50:06 ID:???]
>>284

>>274に頼んでくれ。
少なくとも漏れはHTML_QuickFormには戻りたくないよ。

287 名前:nobodyさん mailto:sage [2008/07/31(木) 19:54:38 ID:???]
>>286
なるほど。じゃぁどう作ってる?Helper駆使?

288 名前:nobodyさん mailto:sage [2008/07/31(木) 20:00:59 ID:???]
>>283
>入力値評価用のバリデータ自作した上で、
要はバリデータスキーマクラスが1個増えるってことだよね?
条件上ごちゃごちゃするのはしょうがないが、バリデータ増やさなくても
isValidやbindオーバーライドしてそこに書いてやれば良くない?


289 名前:283 mailto:sage [2008/07/31(木) 20:04:41 ID:???]
>>288
sfValidatorSchemaCompareをパクって、
フィールドとオペレータと値を引数に取るバリデータクラスmyValidatorSchemaIfを作って、

$this->validatorSchema->setPostValidator(new sfValidatorAnd(array(
$this->validatorSchema->getPostValidator(), // 親クラスのポストバリデータも動くようにするためにAnd
new sfValidatorSchemaCompare('email', sfValidatorSchemaCompare::EQUAL, 'email_confirm',
array(),array('invalid' => 'メールアドレスが一致しません。')
),
new sfValidatorOr(array(
new sfValidatorAnd(array(
new myValidatorSchemaIf('A', myValidatorSchemaIf::EQUAL, 'on', // チェックされている
array(),array('invalid' => ' ')
),
new sfValidatorOr(array(
new myValidatorSchemaIf('B', myValidatorSchemaIf::NOT_EQUAL, '', // チェックされていない
array(),array('invalid' => ' ')
),
new myValidatorSchemaIf('C', myValidatorSchemaIf::NOT_EQUAL, '', // チェックされていない
array(),array('invalid' => ' ')
),
)),
)),
new myValidatorSchemaIf('A', myValidatorSchemaIf::EQUAL, '', // チェックされていない
array(),
array('invalid' => '少なくとも1つをチェックしてください。')
),
)),
)));
テキストボックスの処理が入ってない状態でこうなっちゃうんだけど。

290 名前:nobodyさん mailto:sage [2008/07/31(木) 21:03:55 ID:???]
テキストボックス無い状態なら、こんな感じじゃない?

public function isValid()
{
$r = sfContext::getInstance()->getRequest();
$nf = $this->getWidgetSchema()->getNameFormat();

if($r->getParameter(sprintf($nf, 'A')))
{

if(!$r->getParameter(sprintf($nf, 'B')) and !$r->getParameter(sprintf($nf, 'C')))
{
$r->setError(sprintf($nf, 'A'), "AがチェックされたらBかCもしくは両方をチェックしてください");
$this->isBound = false;
}

}

return parent::isValid();
}



291 名前:nobodyさん mailto:sage [2008/07/31(木) 21:43:21 ID:???]
$r->setErrorのとこは

$this->getErrorSchema()->addError(
new sfValidatorError(
new sfValidatorPass(),"AがチェックされたらBかCもしくは両方をチェックしてください"
)
, 'A');

こっちにするべきか

292 名前:nobodyさん mailto:sage [2008/07/31(木) 22:13:12 ID:???]
$r->getParameter()のところは$this->getValue()で取れるわ

293 名前:nobodyさん mailto:sage [2008/07/31(木) 23:01:29 ID:???]
>>290-292

ありがとうございます。
比べて見たら漏れって馬鹿だなってまるわかりだね。
でも4章までしかないフォームガイドじゃさっぱりわからないことだらけで。

294 名前:nobodyさん mailto:sage [2008/07/31(木) 23:12:36 ID:???]
>>293
sfFormのパブリックメソッドを見渡して、どんな動作するか予測したり試してみたりすると良いよ。




295 名前:nobodyさん mailto:sage [2008/08/01(金) 00:11:12 ID:???]
>>277
言い訳乙ww

296 名前:nobodyさん mailto:sage [2008/08/01(金) 02:48:41 ID:???]
ここまでの流れで随分分かりやすく解説されたのに、
言い訳だと思える>>295の知能に同情

297 名前:283=293 mailto:sage [2008/08/01(金) 11:00:00 ID:???]
残念、その通りやってみたのですが、
エラーが上手く設定できていません。
parent::isValid()の位置を変えてみたりしたのですが、
通常のバリデータが通過したときだけオーバーライドした内容が評価されているようです。

ttp://groups.google.co.jp/group/symfony-devs/browse_thread/thread/a7a7ad2dd3ae1621

ここを読むと似たような罠にはまっていて、
返事に
「(カスタムバリデータ強制してるのは)再利用性とユニットテストしやすさのためだよ」
と書かれた後にFabienが「限定用途ならバリデータ作らないでsfValidatorCallback使えるよ」
とか書いてるんですが……
やっぱりポストバリデータで書くのが1.1流なんでしょうか。

298 名前:nobodyさん mailto:sage [2008/08/01(金) 11:23:31 ID:???]
sfFormって便利なの?

299 名前:nobodyさん mailto:sage [2008/08/01(金) 13:01:18 ID:???]
>>297
それは無い。動作検証してるし。
逆にsfValidatorCallbackでやると、$this->getValueで値がとれないから無理。
ちょっとコード晒してみなよ。

300 名前:283 mailto:sage [2008/08/01(金) 13:56:08 ID:???]
293のフォームとは違うのですが
public function isValid()
{
$result = parent::isValid();
print_r($this->getValue('a'));
if($this->getValue('a') == '2') // Aが2かどうか
{
if($this->getValue('b') === '')
{
$this->getErrorSchema()->addError(
new sfValidatorError(new sfValidatorPass(), "bが空欄です。"),'b');
$this->isBound = false;
}
}
else
{
if($this->getValue('c') === '' || $this->getValue('d') === '')
{
$this->getErrorSchema()->addError(
new sfValidatorError(new sfValidatorPass(), "cまたはdが空欄です。"),'c');
$this->isBound = false;
}

if($this->getValue('e') === '' || $this->getValue('f') === '')
{
$this->getErrorSchema()->addError(
new sfValidatorError(new sfValidatorPass(), "eまたはfが空欄です。"),'f');
$this->isBound = false;
}
}
return $result & (0 == count($this->errorSchema));
}

301 名前:283 mailto:sage [2008/08/01(金) 13:56:54 ID:???]
print_r()している箇所で、
parent::isValid()がtrueの場合でないと、
$this->getValue()の値が取得できていないようです。

302 名前:283 mailto:sage [2008/08/01(金) 14:14:21 ID:???]
sfForm::bind()を読むと、
$this->validatorSchema->clean()でsfValidatorErrorSchema例外が起きたら
$this->values = array()されちゃってますね。

bind()にセッション変数に格納した値を渡すような場合もある以上、
getParameter()を使うのも問題があるので、このやり方は使えないようです。

303 名前:nobodyさん mailto:sage [2008/08/01(金) 14:38:20 ID:???]
>>301
ていうか、configureでの設定間違えてる。
ソース全体晒すか、sfFormのソースよく読みなおしてごらん。

304 名前:283 mailto:sage [2008/08/01(金) 14:56:54 ID:???]
>>303
configure()ですか?
propel:generate-crudしたものに
・widgetの追加
・validatorの追加
・setPostValidator()
・setDefaults()
してるくらいです。

先に上げたポストバリデータ方式だと、
動作自体は期待通り動いているので、
バリデータの記述に問題があるとも考えにくいのですが……



305 名前:nobodyさん mailto:sage [2008/08/01(金) 15:17:28 ID:???]
まず290-292のコードは動いたの?
>293のフォームとは違うのですが
とか勝手にフォーム変えて、動かないコードの一部を晒されて、
他人が理解できると思ってるの?

306 名前:283 mailto:sage [2008/08/01(金) 16:00:11 ID:???]
>>305
なるべく忠実にやってから上手く動かないので、
他のフォームで試行錯誤していたっていう流れだったのですが、
確かにわかりにくかったとは思います。
しかし挙動は同じです。

public function isValid()
{
print_r($this->getValue('A'));
if($this->getValue('A'))
{

if(!$this->getValue('B') and !$this->getValue('C'))
{
$this->getErrorSchema()->addError(
new sfValidatorError(
new sfValidatorPass(),"AがチェックされたらBかCもしくは両方をチェックしてください"
)
, 'A');
$this->isBound = false;
}
}
return parent::isValid;
}

307 名前:nobodyさん mailto:sage [2008/08/01(金) 16:42:35 ID:???]
bind()の時点でバリデーションは終わってるのだから、
isValid()はバリデーション結果を返すだけの役目のはず。
isValid()に書くのはお門違いちゃう?

308 名前:nobodyさん mailto:sage [2008/08/01(金) 16:51:42 ID:???]
$this->getValue('A')

('A')が顔に見えるww

309 名前:nobodyさん mailto:sage [2008/08/04(月) 12:56:39 ID:???]
ああ…そうだな…

310 名前:nobodyさん mailto:sage [2008/08/04(月) 14:55:45 ID:???]
コマンド:
symfony generate:module frontend hoge
再生されるモジュール:
modules/hoge/actions/actions.class
URL:
example.com/hoge/index

example.com/hoge/poge/index
みたいな下の階層のURLに対するアクションに対応するにはどうすればいいですか?
symfony generate:module frontend hoge/poge
は駄目でした・・・

311 名前:nobodyさん mailto:sage [2008/08/04(月) 15:12:27 ID:???]
routing.ymlでしこしこしろってことかな

312 名前:nobodyさん mailto:sage [2008/08/04(月) 16:13:19 ID:???]
routingいじってもできるだろうけど、
もっと原始的に、
symfony generate:module frontend poge

にして
DOCUMENT_ROOT/hoge/
掘ってindex.php置いて相対位置書き換えるんじゃだめなん?

313 名前:nobodyさん mailto:sage [2008/08/04(月) 16:17:03 ID:???]
なるほど、そういう手もあるか。
railsだと、generate controller hoge/poge
みたいにやると、ちゃんと階層化されたコントローラ(モジュール)ができるんだけど
フランチョス的には階層深くするなってことなのかな。
それならそれでフランチョスの意志に従っても良い気がしてきた。

314 名前:nobodyさん mailto:sage [2008/08/04(月) 19:43:39 ID:???]
routing.ymlに
mobulea:
url: /modulea/:param1/*
param: { module: modulea, action: index }
moduleb:
url: /moduleb/:param1/*
param: { module: modulea, action: index }
と記述すると、modulebのルーティングルールが呼ばれないんだけど、
どうしたらいいんでしょう?moduleaは呼び出されます。
ちなみに、上の二つを消し、以下のように書き換えると
そのルールすら呼び出されません。
hogemodule:
url: /:module/:param1/*
params: { action: index }

使ってるsymfonyのバージョンは1.0.16です。
ルールの呼ばれる、呼ばれないはdevの画面右上のlogs & msgsで確認してます。



315 名前:314 mailto:sage [2008/08/04(月) 20:31:46 ID:???]
ごめんなさい。できました
ただのyamlの記述ミスでした。

吊ってくる

316 名前:nobodyさん mailto:sage [2008/08/05(火) 09:27:37 ID:???]
1.1ではswiftMailerを使うようだけどここの記事
ttp://www.thinkit.co.jp/article/71/1/3.html

を見たらISO-2022-JPが上手く動作しないらしいんだけど
他の人はどうしてるんですか?UTF-8を使うんですか?

317 名前:nobodyさん mailto:sage [2008/08/07(木) 17:00:25 ID:???]
気づいたら symfony-1.1.1 出てるなあ

318 名前:nobodyさん [2008/08/10(日) 03:35:56 ID:zn9kEIVJ]
1.0系たけど
各Loggerじゃなくて
それらに指令を出すトップレベルのsfLogger自体をオーバーライドしたい時は
どう書けばいい?

319 名前:nobodyさん mailto:sage [2008/08/10(日) 03:43:09 ID:???]
sfLoggingConfigHandlerで
$data .= "\n\$logger = sfLogger::getInstance();\n";
とハードコーディングしてた・・
ほんと使えないフランチョスだな

320 名前:nobodyさん mailto:sage [2008/08/10(日) 04:21:55 ID:???]
1.1ではsfAggregateLoggerになってるのか
そりゃそうだよな
何か変な実装だもん

321 名前:nobodyさん mailto:sage [2008/08/11(月) 21:00:04 ID:???]
>>273
compat10を有効にしてフォームウィジェットを使わなければいい

322 名前:nobodyさん [2008/08/11(月) 22:25:50 ID:jwJ3rV7r]
1.1でpropel:init-adminしたんだけど、一覧から編集用画面へのリンクのコントローラ名が消えてる。
具体的にいうと、
localhost/hogeProject/web/backend.php/member/edit/id/1
ってなってほしいところが
localhost/hogeProject/web/member/edit/id/1
って生成されてる。開発用コントローラからは
localhost/hogeProject/web/backend_dev.php/member/edit/id/1
って生成されてるところを見ると、本番用コントローラでなんか設定を忘れてるのかな?
ちなみに、
localhost/hogeProject/web/backend_dev.php/member/edit/id/1
を直接入力したらちゃんと呼び出せたので、propel:init-admin自体は多分成功してる。
cache:clearも実行したけど変化なし。
ちなみにWindows XP+XAMPPで実行中。

何が足りないのかな?

323 名前:322 mailto:sage [2008/08/12(火) 13:06:13 ID:???]
>>322
自己解決。settings.ymlのno_script_nameがonになってた。申し訳ない……。
でもこれ、何個アプリケーション作ろうともデフォルトはonなのな。

324 名前:nobodyさん [2008/08/13(水) 14:28:50 ID:ccVg322Y]
The defenitive Guide to symfony
ってマンモス本より役に立つ?




325 名前:nobodyさん mailto:sage [2008/08/13(水) 18:51:17 ID:???]
form_remote_tagでは、引数の配列のurlに?〜でパラメータを入れて、
remote_functionでは、引数の配列のwithにパラメータを入れるっていうのが
紛らわしいというか奇妙というか
1.0の話だけど

326 名前:nobodyさん mailto:sage [2008/08/13(水) 23:47:37 ID:???]
パラメータをurlエンコードして
/module/action/word/%E3%82%A8%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89
って感じにしたパスをlink_toに渡してリンクを作っていたんだが
link_toがエンコード文字部分を勝手に書き換えてたせいで変なバグに悩まされた ('A`)

327 名前:nobodyさん mailto:sage [2008/08/14(木) 18:22:05 ID:???]
ttp://symfony.xrea.jp/1.1/forms_book/02-Form-Validation.html
を参考にアップロード処理作ったんだけど、
ローカルでxampp上だとうまく動くのに
サーバー上だとアップロードできない。
$file->isSaved()
もtrue返すのに、、。

アップロードフォルダーのパーミッションも大丈夫だと思うし、
それ以外に気をつける点ってあればどなたかご指摘下さい。

てか、isSaved() が true 返してるが気に入らない。なんで?

328 名前:nobodyさん [2008/08/15(金) 01:40:17 ID:YW2vuQsP]
Internal Server Error画面を独自のものにするには
どうしたらいいですか?

329 名前:nobodyさん mailto:sage [2008/08/15(金) 23:29:09 ID:???]
マンモスSymfony本を見て、実際に手を動かし始めたところですが、以下の二点で詰まってしまいました。
アドバイスを頂ければ幸いです。

(1)バリデータのエラーメッセージをデフォルトで日本語化することはできないのでしょうか?
(2)メッセージの一部パラメータ化(例:「$a1は$a2文字から$a3文字までの長さで入力してください」)って出来ないのでしょうか?

アクションごとにバリデータのメッセージを設定する方法は検索できました
(ttp://develop.ddo.jp/symfony/book/jp/1.0/validate_form.htmlの「名前をつけたバリデーター」以下の方法で、日本語を設定していけばいいんですよね?)
が、これをアクションごとに記述していくのはやはり手間です。他に方法はないのでしょうか?

330 名前:nobodyさん [2008/08/16(土) 16:52:57 ID:z7m75dUv]
propelで、SQLの確認の仕方おしえてください

331 名前:nobodyさん mailto:sage [2008/08/16(土) 21:05:40 ID:???]
dev

332 名前:329 [2008/08/17(日) 16:02:07 ID:IR0jQIbG]
>>329
自己res。今のSymfony1.1では、>>329のやり方って古かったんですね。

今のsfFormなら、少なくとも(2)は出来る事がわかりました。ただし(1)(デフォルトでの日本語化)はまだ方法がわかりません。
まぁ、各バリデータのconfigureだけをオーバーライドしたクラスを作ってしまえばいいのかもしれませんが、なんとなくスマートではない気がしますし、メッセージを管理する場所がバラけてしまうのも少々厄介です。

何か他にいい方法はないでしょうか?

333 名前:nobodyさん mailto:sage [2008/08/18(月) 13:56:03 ID:???]
Propel:getConnection()->getLastExecutedQuery();
だったっけ

334 名前:nobodyさん [2008/08/18(月) 16:19:58 ID:jvpRje/g]
>>332
sfFormを継承して、configureの後にValidatorSchemaを全部ナメてってsetMessageしてやれば何とかなりそうだけど・・・
これってやっぱ車輪の再発明?



335 名前:327 mailto:sage [2008/08/18(月) 17:12:57 ID:???]
327の自己レス

サーバーとローカルの構成を変えていたのが原因で、
違う場所に保存されていました。(^^;

336 名前:nobodyさん mailto:sage [2008/08/18(月) 17:25:52 ID:???]
場違いな疑問なんだが、なんで例えが車輪になったんだ。
よくあるものならなんでも良かったってことか?電球とかオナホールとか

337 名前:nobodyさん mailto:sage [2008/08/18(月) 19:35:03 ID:???]
この後、「車輪の再発明」の語源スレになります。

338 名前:334 [2008/08/18(月) 22:24:47 ID:jvpRje/g]
>>334
いちおー出来たっぽいが、誰か見てみる?
Symfonyいじり始めて一週間&実質20行のコードだから、あまり過度な期待はしてもらっても困るけど。

でもこの程度のこと、絶対誰かやってると思うんだけどね。

339 名前:nobodyさん mailto:sage [2008/08/19(火) 19:33:45 ID:???]
洋梨のようです

340 名前:nobodyさん [2008/08/19(火) 20:41:23 ID:8DZ4PLH3]
getメソッドで、
form_tagを使った時の遷移先に
?key=valueじゃなく
ルーティングルールを適用させる方法ってある?

341 名前:334 mailto:sage [2008/08/19(火) 20:58:45 ID:???]
>>339
だね。やっぱこの程度のこと、もう誰かor本家がやってるか。

342 名前:nobodyさん [2008/08/20(水) 23:33:43 ID:LuQqZLWt]
sfPropelOptimisticLockBehaviorPluginって、誰か使ってるヒトいる?

楽観的ロックって、自分で実装すると結構めんどくさいんだよね。
特に汎用にしようとすると。

343 名前:nobodyさん [2008/08/22(金) 11:58:57 ID:Vc/mgEWX]
確認画面、プラグインで実装した人がいるね
ttp://www.open-force.info/index.php/blog/show/l/54
公開してまだ一週間だから、信頼性についてはまぁそれなりにってトコだろうけど。
でも、「日本独特の文化ですよね」って断言されるほど、海の向こうじゃマイナーな機能なのか?

344 名前:nobodyさん [2008/08/22(金) 21:23:08 ID:fOZ3YS9P]
Cannot redeclare get_callbacks()ってどうすりゃいいんだ?
use_helper('javascript')が複数あるとこれになるみたいなんだが、
helperが使われてるか確認する方法ってある?



345 名前:344 [2008/08/22(金) 21:30:22 ID:fOZ3YS9P]
ごめん、早とちりだった。
use_helper('javascript')

use_helper('Javascript')
がごっちゃになってたからエラーになってたみたいだ

346 名前:nobodyさん mailto:sage [2008/08/23(土) 17:28:28 ID:???]
>>343
海外のサイトのユーザ登録をいくつかこなしてみればわかる

347 名前:nobodyさん mailto:sage [2008/08/23(土) 17:56:23 ID:???]
1.1使ってみた
1.0より洗練されててよいね〜

348 名前:nobodyさん mailto:sage [2008/08/23(土) 21:11:42 ID:???]
デフィニシブガイドって1.0ベースでしょ?
1.1とだいぶ違うから買っても使えなそう
フランチョステラ詐欺師www

349 名前:nobodyさん mailto:sage [2008/08/24(日) 02:03:12 ID:???]
>>348
またおまえかよwww

350 名前:nobodyさん mailto:sage [2008/08/24(日) 04:22:57 ID:???]
1.1ってdefaultって名前のモジュール作らない方がいいの?

351 名前:nobodyさん mailto:sage [2008/08/24(日) 04:49:49 ID:???]
>>348
ネットでタダで読めるだろ


352 名前:nobodyさん mailto:sage [2008/08/24(日) 05:21:15 ID:???]
sfForm、作りかけてた俺俺Formにそっくりだ
俺とフランチョステラエスパー

353 名前:343 mailto:sage [2008/08/25(月) 11:14:01 ID:???]
>>346
ふむ、今まであまり気にしてなかったが、言われてみればあまり見た記憶がないな
>海外サイトのユーザー登録での確認画面

外人ってせっかちなのか、それとも画面以外(ex.メールとか)での確認の方を重視してるのか……
まぁ、これ以上はスレ違いか。

354 名前:nobodyさん mailto:sage [2008/08/25(月) 16:51:30 ID:???]
わざわざ静的ページつくらんでもフォームの時確認すりゃいいだけだし



355 名前:nobodyさん mailto:sage [2008/08/26(火) 01:37:54 ID:???]
codezine.jp/article/detail/704?p=1

上記URLを参考にsymfonyを始めたんですが、
codezine.jp/article/detail/704?p=4
localhost/helloworldにアクセスしても『お名前をどうぞ。』しか表示されません。
ヘルパーが実行されていないようなのですが、何かここがおかしいんじゃないかみたいなのあったら教えて頂けないでしょうか。
環境はvista apache2.2.6 php5.2.4です。

よろしくお願いします。。

356 名前:nobodyさん mailto:sage [2008/08/26(火) 09:25:21 ID:???]
>>355
日付を見ると、その記事は間違いなく1.0を対象にした記事。
1.1だと、「use_helper('form')」って書かないとヘルパーは動かない。
1.1だとヘルパー使わずフォームを使うのがフランチョスのお勧め。

sfCompat10を有効にすれば大丈夫だっけ?>ヘルパー






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<217KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef