フランチョスとsymfon ..
[2ch|▼Menu]
596:nobodyさん
09/01/26 01:23:09
>>595
できるよ
まぁできるってだけで、それが効率いいかどうかは微妙

597:nobodyさん
09/01/29 00:34:41
>>596
どういう方法?

598:nobodyさん
09/01/29 21:43:36 rSa/9joZ
1.0.19の調査中ですが質問させて下さい。

Apacheにて、BASIC認証・SSL・nonSSL
の3つのディレクトリで構成したいのですが、
symfonyに適合させるためには、
webディレクトリ下にディレクトリを作成して、
フロントコントローラを移動するのが
ベストでしょうか?


599:nobodyさん
09/01/29 21:44:00 rSa/9joZ
あげてもうた、ごめんなさい

600:nobodyさん
09/01/30 14:23:56
>BASIC認証・SSL・nonSSL
ここがよくわからん
BASIC認証+SSL
SSL
NonSSL
の三本立て?
どっちにしろSymfonyとは関係なさげ

601:nobodyさん
09/01/30 21:45:58
>>600さん
3本立ての3システムです。
これは、1プロジェクトにしたいです。

Apacheは、ディレクトリ単位ででした
設定(.htaccess等)できないので。
symfonyのwebディレクトリも3ついると
思っています。

間違いがありましたらご指摘よろしくお願いします。
なんか勘違いしてる余寒・・・

602:601
09/01/30 21:47:29
×Apacheは、ディレクトリ単位ででした
○Apacheは、ディレクトリ単位でしか

603:nobodyさん
09/01/31 08:04:46

公開フォルダを3つに分ければ簡単に出来る。

でも同一コンテンツでセキュリティーレベルが違うって考えが
おかしい気がする。



604:601
09/01/31 11:44:52
>>603さん
ご返答ありがとうございます。

具体的には、>>598のやり方で、
よいという事でしょうか?

同一コンテンツではありません。
事例的には、Amazonnとか
商品サイトと、商品注文サイト、会員サイト
の3つでセキュリティレベル違うのと同じです。

605:nobodyさん
09/02/02 18:51:41

その方法だね。
ただ、action内で識別するロジックを忘れるな。



606:nobodyさん
09/02/03 18:04:37 7F1r2xmv
sfPropelPagerで検索結果のページをページングする時
formから来た?hoge=huga......................といっぱいついてくるクエリーはどうしてます?
セッションに保存するのも微妙だし
テンプレートで$_SERVER['QUERY_STRING']か取得してごにょごにょするのもどうかなと。

sfPropelPager自体には無さそうですよね?
sfPropelPagerを拡張してmodel側で$_SERVER['QUERY_STRING']をどうにかする感じでしょうか?

607:606
09/02/03 18:40:10 7F1r2xmv
あ、link_toのoptionにquery_stringっていうのがありますね。
この辺をうまく使う感じでしょうか?

608:nobodyさん
09/02/04 14:13:43
Criteriaだめだな。
簡単なクエリなら作れるけどANDとかORが複雑に絡み合ったりするとお手上げ。
なにがしたいのか意味がわからない。

609:nobodyさん
09/02/04 15:27:40
オブジェクト指向で考えろ

610:608
09/02/04 20:32:27
>>609
例えば
SELECT t_job.*
FROM t_job
WHERE
(t_job.ID IN ( SELECT v_rel_job_area.JOB_ID FROM v_rel_job_area WHERE v_rel_job_area.DISTRICT_ID = 1 ))
AND
(t_job.ID IN ( SELECT t_rel_job_category.JOB_ID FROM t_rel_job_category WHERE t_rel_job_category.CATEGORY_ID IN (1, 5, 6) ))
AND
( (t_job.STATUS IN (1, 2)) OR (t_job.STATUS = 0 AND t_job.ID IN ( SELECT t_rel_job_publish.JOB_ID FROM t_rel_job_publish WHERE t_rel_job_publish.PUBLISH_ID = 1)) )

こんなクエリ作れなくない?
作れるのか?

なんかCriteria::CUSTOMを同じかカラム名でaddすると上書かれて前のクエリ消えるし
addAndですると括弧が変なところについておかしなことになるし

公式見ても複雑なものは生SQLで、みないな事書いてない?

611:nobodyさん
09/02/05 14:30:33
アクションでアサインされた全ての変数を
テンプレート内で、取得したいときって
$sf_context->getActionStack()->getLastEntry()->getActionInstance()->getVarHolder()->getAll()
ってわざわざ書かないとだめ?

612:nobodyさん
09/02/05 14:38:32
>>610
Criteriaがダメなんじゃなくて、そもそもその文抽象化されてないから。

まぁ俺はサブクエリビルドクラス使って対処してるけど。

613:nobodyさん
09/02/06 21:04:13
>>610
上書きされる件はCriterion使えばできない?

614:nobodyさん
09/02/07 02:38:32
>>613
使い方おしえてやれよ…

615:nobodyさん
09/02/10 10:59:01 HED7VAZr
symfony test:unit で、ファイル名まで指定して単体で実行すると問題ないが、まとめて単体テストを実行するときに255か返ってくる、
とい問題が起きました。どこでエラーになっているかを表示、あるいはログに記録する方法はあるでしょうか?

616:nobodyさん
09/02/10 20:29:08
訳あってsymfony1.0使っているんだけど、
sfValidatorManagerの拡張クラスを作って、
それをValidate実行時に使わせることってできる?

617:nobodyさん
09/02/11 20:07:05
できるよ

618:nobodyさん
09/02/12 13:08:50
ほほー。どこになんて書けばいい?


619:nobodyさん
09/02/12 17:37:15
自分で考えろ

620:nobodyさん
09/02/12 22:36:13
どこに何を書くも糞も無いだろう。必要なクラス持ってきて1.1↑と同じように書くだけ

621:nobodyさん
09/02/12 23:54:55
1.0、1.1、1.2みんなはどれ使ってるの?

なぜか1.0のメンテナンス終了が2010年の1月で1.2のメンテナンス終了が2009年の11月なのでどちらで作っていくべきか迷ってるんですが。。。どれが良いと思いますか?

622:nobodyさん
09/02/13 02:57:30
>>621
最近始めたので、1.2使ってる
なので、どれがいいかは分からない

1.2でルーティング周りのクラスが追加されていて、特にsfRouteCollectionを使用すると、より簡潔にrouting.ymlを記述出来るようなので、
これから始めるのなら、1.2の方がいいんじゃないの?


623:nobodyさん
09/02/14 03:58:23
英語サイトの情報見れないなら1.0が無難。
そうでないなら1.2。

624:nobodyさん
09/02/14 19:37:59
PHPが5.1なので1.1使ってる。
同じような人、結構いそうな気がするけど。

625:nobodyさん
09/02/15 02:18:10
あれ、5.1って致命的なバグがあって使わないようにとかアナウンスされてなかったっけ。
どんなバグだったか忘れたけど

626:nobodyさん
09/02/15 02:23:40
cent osが5.1じゃなかったっけ?

627:nobodyさん
09/02/15 02:29:06
そんなもん入れ替えろよ…

628:nobodyさん
09/02/15 04:25:24
PHP5.1を使い続ける必要性があるのか?
単純なパフォーマンスでも5.2系の方が優れてるはず

629:nobodyさん
09/02/15 12:28:12
1.2を使っています。

メール送信を実装しようと思ったのですが、
$mail = new sfMail();
とすると、
Class 'sfMail' not found
になってしまいます。
なにか設定が必要なのでしょうか?

630:nobodyさん
09/02/15 13:09:51
>>629
compact10

631:629
09/02/15 13:21:32
>>630
なるほど。sfMailはなくなったんですね。
ほかの方法を調べてみます。

632:nobodyさん
09/02/15 13:34:25
>>627,628
勝手にサーバー環境を変えることが出来ない仕事ってのもあるんですよ。
スレ違いすんません。

633:nobodyさん
09/02/15 14:07:13
アクション内で内部URLから絶対URLを生成するにはどうすればいいの?

634:nobodyさん
09/02/15 14:11:46 LyJslojL
>>626
だね。Redhat/CentOSの5は5.1。

>>628
そりゃま、完全に1から自分でインストールできるんならね。
流石にPHP4はもう使わなくてすむとは思うがw

635:nobodyさん
09/02/16 01:09:30
>>633
smfony 1.2の場合

sfContext::getInstance()->getController()->genUrl($internal_uri, $absolute);

↑url_forの実装
$internal_uriに内部URL
$absoluteは相対パスならfalse、絶対パスならtrueを渡す

636:nobodyさん
09/02/16 08:41:43
いつまでも穴あきの5.1使うような仕事なんてしてちゃだめだろ

637:nobodyさん
09/02/16 12:40:27
仕事を選べない人は大変ですね

638:nobodyさん
09/02/16 13:00:38 Eg6IU/sq
pluginアップしてみたんだけど
リポジトリにあげる前に一度symfony plugin:install プラグイン名しちゃって
No release available for plugin プラグイン名
というエラーメッセージがでたんです。

で、その後ファイル上げてから何度やっても同じメッセージでインストールできなくなっちゃいました。
ためしに別のサーバーに入れてみたら普通にインストールできました。

symfony cc
とか
pear clear-cache
とか
rm -f cache/.pear
とか
pear channel-update plugins.symfony-project.org
とかやってみたけどだめでした。
サーバー再起動もだめでした。

どなたか方法ご存知の方いらっしゃいませんか?

639:633
09/02/16 16:25:53
>>635
ありがとうございます。

$this->genUrl()
でダメだったのであきらめてました。

でも、なんでこんなに長いんだろう・・・;

640:nobodyさん
09/02/16 16:48:05
欲しいメソッドはmyActionに実装したらいいだけジャン

641:nobodyさん
09/02/16 23:37:58
>>639

補足
アクション内からなら、
sfContext::getInstance()->getController()を
$this->getController()に変更出来る(やってることは同じ。少しは短くなった?)

また、内部URLではなく、ルート名と、クエリパラメータにする値が分かっているのなら、アクション内で
$this->generateUrl($route, $params, $absolute)を呼ぶことでURLを生成することができます。

ここで、
$routeはルート名
$paramsはモデルオブジェクトか値の配列。

ただしモデルオブジェクトが渡せるのは、ルートのoptions['type'] === 'object'の時のみ。
(一言でうまく説明出来ないので、詳細はsfObjectRoute::generate()のソース見て)

配列であれば、タイプに関係なく渡せる。
クエリパラメータが不要な時は空配列(array())

$absoluteは>>635同様、絶対パスか相対パスかどうか


わたしは、アクション内でリダイレクトのURLを作成する際にgenerateUrl()を使用しています。

642:nobodyさん
09/02/17 20:01:10 K56TvPG0
PropelでEXISTS演算子を使いたい場合、やっぱりCriteria::CUSTOMで直接記述するしかないのかな?
まぁ、副問い合わせも使うんだし、当たり前といえば当たり前か。
やってみたことある人いる?

643:nobodyさん
09/02/18 08:04:45
質問です。

DBテーブル定義を修正しようとして、schema.ymlを修正し、
./symfony propel-build-all を実行すると、
DBテーブルの内容が全部消えてしまいます。

今はダンプファイルを取っておいて、あとで書き戻すことで対応していますが、
何かもっと洗練された方法はないでしょうか?


644:nobodyさん
09/02/18 09:08:41
propel-build-model

645:643
09/02/18 09:25:54
追記です。

propel-load-data というコマンドがあるようです。

しかしこれは、DBにセットするデータをyamlファイルで用意してやらなければ
なりません。WEBブラウザなどからDBに入力したデータをyamlファイルに書き出
す方法は無いようなので、yamlファイルを作るのはちょっと手間に感じられます。

これならダンプファイルを取っておいて、それをエディタで修正してロードす
るほうが現実的なような...。


646:nobodyさん
09/02/18 12:45:51
すみません、symfony & MySQLで、最後に挿入した行のIDを取得するには、
どうしたらいいですか?


647:nobodyさん
09/02/18 19:49:24
>>645
自分は
URLリンク(www.symfony-project.org)
これをつかってるよ。

648:643
09/02/18 21:35:13
>>647
ありがとうございます。参考にさせていただきます。

Plugins | sfPropelMigrationsLightPlugin | 1.1.2 | symfony | Web PHP Framework
URLリンク(www.symfony-project.org)

こんなのもあるようです。Rails の Migration と同じなのかしら。

649:nobodyさん
09/02/18 21:46:02
>>648
全然違う

650:nobodyさん
09/02/18 21:51:22
>>610
$c =new Criteria();
$c->add(TJobPeer::ID,
"(t_job.ID IN ( SELECT v_rel_job_area.JOB_ID FROM v_rel_job_area WHERE v_rel_job_area.DISTRICT_ID = 1 ))
AND
(t_job.ID IN ( SELECT t_rel_job_category.JOB_ID FROM t_rel_job_category WHERE t_rel_job_category.CATEGORY_ID IN (1, 5, 6) ))
AND
( (t_job.STATUS IN (1, 2)) OR (t_job.STATUS = 0 AND t_job.ID IN ( SELECT t_rel_job_publish.JOB_ID FROM t_rel_job_publish WHERE t_rel_job_publish.PUBLISH_ID = 1)) )
", Criteria::CUSTOM);

$rs = TJobPeer::doSelect($c);

651:nobodyさん
09/02/19 20:08:27
>>646
Propelなら、モデルのsaveメソッドを呼び出した後、単にgetすればOK。
Doctrineは知らんw

652:nobodyさん
09/02/24 21:06:31
symfony1.2ってデバックモードの時WEBデバックツールでSQLって表示される?
symfony1.0の時はされたと思うんだけど、1.2からされなくなってるみたいで。
あと、1.2で実行したSQL文そのものって取得できますか?(1.0でのgetLastExecutedQueryのような)

653:nobodyさん
09/02/24 21:19:50
>>652
SQL表示されるよ

symfonyどこにインストールしてるか知らんけど、pearから取ってきたのなら、
javascriptを有効にした上で、
data/symfony/web/sfに対して、仮想ディレクトリ(エイリアス)を作るか、
プロジェクトのwebフォルダにコピーすれば、いけるはず。

また、この情報は、実行したログを解析してるだけだろうから、ログ直接眺めてみたらいいんじゃない?

1.2から使い始めたので、getLastExecutedQueryとか分かんね。
これも、ログ見たらいいんじゃないの?としか言えない



654:nobodyさん
09/02/25 12:03:02
>>652
バージョン古いか、propel.iniの設定か

655:nobodyさん
09/02/25 13:06:51
>>653
>>654
database.ymlのclassnameをprodと同じにしてたのが原因だったみたいです。。
DebugPDOに変えたらSQL表示されました
getLastExecutedQueryはログがどうやってSQL取り出してるか探してみます

656:nobodyさん
09/02/25 13:11:42
Propelってsqlつくるだけってのが出来ないのがウザイな。
絶対実行とセットだから、サブクエリやろうとすると独自拡張に頼らざるを得ない

657:nobodyさん
09/02/27 14:01:43
symfonyの問題じゃないかもだけど、携帯サイトで実行結果をファイルにキャッシュって
セッションIDをURLで埋め込むから出来ないよね?

658:nobodyさん
09/02/28 23:20:00
できるよ

659:nobodyさん
09/03/03 15:02:29
>>656
$sql = BasePeer::createSelectSql($criteria, array());


660:nobodyさん
09/03/10 07:45:12
>>659
あのさ、$c->add(ModelPeer::ID , 1);
とかやってごらん
idのとこが?になってるだろ?
?を置換する独自拡張が必要という意味だって思わなかった?

あと、第二引数は参照になってるから、 array()なんてやっちゃ駄目だよ。
勉強になったかな?

661:nobodyさん
09/03/11 06:50:03
symfonyで自作のクラス組み込んだ時とかに、
不具合があっても画面真っ白でエラーも表示されないってことない?
レスポンスが情報吐く前にコケてるのか知らないけど
この状態になるとすげーデバッグしにくい。
高度にレスポンス管理するのも考えものだよなぁ

662:nobodyさん
09/03/11 08:53:10
>>661
Apacheのエラーログ見たら
PHPレベルのFatalエラー吐かれてない?
dev環境だけ表示される場合もあるし、
/var/log/messagesかも。

663:nobodyさん
09/03/11 09:09:27
>>662
apacheログのこと忘れてた!と思って見たら
exit signal Segmentation faultが大量に・・
調べたらxdebugの設定ミスだった
助かりました。ありがとう!

664:nobodyさん
09/03/13 13:57:23
Cakeからsymfonyに移りたいのですが、
なにから勉強すればいいのかわかりません。

定番のチュートリアルなどあるのでしょうか?
いくつか見つけたのですが、バージョンが古いようで・・・

主にsfFormの使い方とデータの登録・取得、ログイン処理などを覚えたいのですが・・・


665:nobodyさん
09/03/13 14:29:07
>>664
symfony 1.2ならJobeet
URLリンク(www.symfony-project.org)

11日目までは日本語訳されてる。
URLリンク(d.hatena.ne.jp)

なんと12日目も公開されてた。感謝。

ログイン周りは13日目かな。


666:664
09/03/14 00:20:34
>>665
1.2向けのチュートリアルが始まっていたのですね!
翻訳してくれている方もいるとは・・・

さっそく試してみたいと思います!

667:nobodyさん
09/03/14 02:41:54
>>664
移りたいと思った理由を知りたい

668:664
09/03/14 03:16:17
>>667
Cakeは標準でコンポーネントなどが充実していて便利なのですが、
それらのクセが強くて、
ちょっと外れたことをしようとするとえらい面倒で・・・
とくにAuthコンポーネントやSecurityコンポーネントなど。

また、Cakeで作られたサイトは、
だいたい、ちょっと見ただけですぐCakeで作られていると分かります。
それくらいクセが強いです。

うまくいえませんが、こんなかんじです。

669:nobodyさん
09/03/14 09:25:05
質問です。

キャッシュ機能を使って、任意の文字列をキャッシュしたいのですが、
どのようにすればよいのでしょうか?
分かる方がいましたら教えてください!

670:nobodyさん
09/03/14 15:43:13
すみませんが、質問です。
fillin がうまく動かないのですが、これはどこに問題があるのでしょうか?
○仕様:page/hoge → page/fuga に遷移

○actions.class.php
public function executeHoge() { $this->hoge = "ほげ"; }
public function executeFuga() { }
public function handleErrorFuga() { $this->forward('page', 'hoge'); }

○hogeSuccess.php
<?php
echo form_tag('page/fuga');
echo $sf_request->getError('hoge');
echo input_tag('hoge', $sf_params->get('hoge'));
//echo input_tag('hoge', $sf_request->getParameter('hoge', $hoge));
?>
</form>

○fugaSuccess.php
<h1>おめでとう!</h1>

○validation/fuga.yml
fillin:
  enabled: on

fields:
  hoge:
    sfStringValidator:
      min: 3
      min_error: "ほげは3字以上で入力してください。"


671:670
09/03/14 15:48:40
すみません、hogeSuccess.phpが間違っていました。

○hogeSuccess.php
<?php
echo form_tag('page/fuga');
echo $sf_request->getError('hoge');
echo input_tag('hoge', $hoge); // 直した行。
//echo input_tag('hoge', $sf_request->getParameter('hoge', $hoge));
?>
</form>

うまく動かない、というのは、バリデーションが働いてhogeSuccess.phpを表示
したとき、ユーザの入力値ではなく、デフォルト値"ほげ"が表示されてしまう
ということです。

その下のコメントアウトした行のように書けば動きますが、この記述だと
fillin: enabled: off にしてもユーザの入力値になるので、fillinが働いてい
るとは言えないと思います。

なお、コメントアウトした行の記述が冗長なのは、以下の理由です。

○[symfony] テンプレートで使える$sf_params->get()の2番目の引数について
URLリンク(gomojp.blog77.fc2.com)

以上です。どなたかアドバイスをお願いします。

672:670
09/03/14 16:11:20
補足です。

symfonyでhierselectができる!の補足(fillin時の手当) | LinuxなWEBデザイナーの覚書き。
URLリンク(php-sql-gdgd.jugem.jp)

> fillinを受ける側のフォームは、各input_tag等のフォームヘルパー関数の引
> 数2つ目(デフォルト値を入れるところ)をnullにする。
> ※私は最初「''」を指定した状態でフィルインできませんでした。object系
> のフォームヘルパーを使ってDBからデフォルト値を持ってきてる場合はどう
> なるんだろう??今度実験してみよう…

たしかに、hogeSuccess.php を

echo input_tag('hoge', null); // さらに直した行。

と書くと、バリデーションが hogeSuccess.php に差し戻したとき、フォームに
ユーザの入力値が入っていました。fillinが動作したようです。

しかしこれでは、デフォルト値の設定ができなくて困ります。page/hoge では
$hogeの値である"ほげ"がフォームに入っていて、バリデーションが動作したと
きは、ユーザの入力値が表示されてほしいのです。


673:670
09/03/14 16:30:13
すみません、自己解決? したみたいです。

試行錯誤して、
echo input_tag('hoge', null, array('value'=>$hoge));
と書いてみたら、希望していた通り、デフォルト値もユーザ入力値も表示され
ました。

しかしこれもかなり冗長なので、ためしに
echo input_tag('hoge', $hoge);
に戻したところ、今までと違って、問題なく表示されたのです。
なんで?!最初のコードと少しも変わらないのに?!

とりあえず動作はするようなので、このまま開発を進めることにします。
お騒がせして申し訳ありませんでした。

674:nobodyさん
09/03/16 15:50:44
質問なんだけど、validation/[アクション名].ymlって、部品化とかして共通化
する方法は無いんだろうか?

二つのアクションがあって、大部分のフィールドは共通なんだけど、片方にだ
けいくつか追加フィールドがあるので、バリデーションの設定の大部分が共通
になる。うまくまとめられたらいいと思うんだけど。


675:674
09/03/16 16:50:44
すみません、自己解決? したみたいです。

676:674 ◆UAG1fZyrYA
09/03/16 18:47:06
>>675 は騙り。まだ解決してない。

677:nobodyさん
09/03/17 10:32:44
継承

678:nobodyさん
09/03/18 16:33:36
だからsfFormが生まれたわけで

679:nobodyさん
09/03/20 20:30:44 bZdrj/Cj
sfFormの話が出たので少々便乗。

1.1以降でSymfonyをステートフルにするには、sfFormでCSRF対策フィールドを1リクエストごとにユニークにすればいいんだよね?
ソースを嘗めたらそんなに難しくなさそうな気がしたんだけど、何か勘違いしてるかな?

いや、「PHPのフレームワークでステートフルなのはPiece Frameworkだけ、なんて文章をちらりと読んだんでね。
もちろん、↑のやり方だと、sfFormで値を持ちまわしているところしかステートフルにならんのは理解してる。
Piece Frameworkのステートフル機能のウリは、getだろうと初回のpostだろうと(その気になれば)ステートフルに出来るってところなんだろうとは思うけど。

680:nobodyさん
09/03/22 04:10:40
質問です。
1.2使ってるんですが、フォームからunsetで消した項目に、
POSTされた際にアクション内で値をセットするにはどう書けばいいのでしょうか?
送信された値から別の値を生成してインサートする、みたいなことがやりたいです。

681:nobodyさん
09/03/22 18:32:07
もうCakeのはいいからどっかsymfonyの本をだしてくれ〜

682:nobodyさん
09/03/22 22:34:47 XhaR9twF
>>680
自分は1.1だが、そーゆーことやりたいときはbindする前の配列いぢくる。 一度validateしたいときは、

1.普通にbind
 ↓
2.NGならおしまい、OKなら値生成→配列に格納
 ↓
3.バリデータを置き換える
 ↓
4.もう一度bindしてvalidate

かな。まぁ、sfFomオーバーライドすればもう少しスマートに出来ると思うが。

>>681
だね。もう少ししっかりした、1.1/1.2対応の解説書は欲しい。

683:nobodyさん
09/03/23 21:55:16
書籍なんていらねーよ。1.1も1.2も一年しかメンテナンスされない使い捨てリリースだし。

684:nobodyさん
09/03/23 22:14:03
そんなこと言ったらほぼ全てのFWの本がいらんことになる

685:nobodyさん
09/03/24 07:21:18
1.0は3年リリース。
ほぼ全てとか何言ってるんだろこの人

686:nobodyさん
09/03/24 14:15:27
すみませんが、質問です。

symfony 1.0 の環境に、sfCSRFPluginを導入して利用しようとしているのです
が、うまく動作しないのです。

sfCSRFPlugin - symfony-doc-ja - CSRF対策用プラグイン - Google Code
URLリンク(code.google.com)

コードを見ると、METHOD=POSTの時だけ、トークンの値をチェックするようになっ
ているのですが、どういうわけか、このフィルタの中では、POSTの場合でも
GETだと認識されて($_SERVER['REQUEST_METHOD']が"GET"となる)、チェック
がいつも働かないのです。

このフィルタ以外の場所、例えばactionクラス等では、GETかPOSTかを正しく検
出できています。

どうにも原因が分からないのですが、どなたかアドバイスをいただけないでしょ
うか?


687:nobodyさん
09/03/24 18:45:26
フランチョスに聞いてください

688:nobodyさん
09/03/25 11:35:03
腐乱著すですが何か?

689:nobodyさん
09/03/25 13:42:58
寒い…このひと寒すぎる。
書き込む前に確認しようよ。
自分がどれだけ恥ずかしいことを書いているかを。
2chだけでなく日常生活でも、寒いことを言っては
場を凍りつかせているんだろうね。

690:nobodyさん
09/03/26 11:33:19
symfonyって、あるアクションに対してPOSTだけしか受け付けないように設定する
ことってできませんか?


691:nobodyさん
09/03/26 12:26:50
getPostParameterで値が取れれば処理、取れなければエラーかリダイレクト、とか。

692:nobodyさん
09/03/26 13:00:31
isMethodみたいのがなかったっけ?

693:690
09/03/26 13:08:38
PHPコードでやれば判別はできますが、validation/<アクション名>.ymlや
filters.ymlなどで設定する仕組みが、symfonyには用意されていないでしょうか?

>>691
後出しですみませんが、1.0限定でお願いします。

>>692
sfRequest::getMethod() ですね。


694:nobodyさん
09/03/26 13:11:39
methods:[]
だっけな。なんかそんなのあったわ

695:690
09/03/26 13:21:03
>>694
たぶんそれは、↓だと思うのですが、

メソッドへのバリデーションを制限する - 第10章 - フォーム
URLリンク(symfony.xrea.jp)

どのメソッドに対してバリデーションを実行するか、の設定であって、
POST以外を弾くという設定ではないみたいです。

やっぱりPHPコードを書かなきゃ駄目なのかな。

696:nobodyさん
09/03/26 13:37:01
zendなんかはそういう指定できるけど
postしか許可しないactionを別に指定するブラックリスト方法は
何かの都合でaction名を途中で変えた場合に、
設定だけが残る可能性があるから疑問

697:nobodyさん
09/03/26 19:40:45
1.0にsfFormもってこりゃいいじゃん。

698:nobodyさん
09/03/28 22:39:09
pdt2.0から /* @var $test Test */ の補完がきかなくなったな

699:nobodyさん
09/03/29 00:23:38 WiWw0VPX
1.2でDoctrine使ってるんだけどSQLクエリーのログって出てる?
envがdevでwebdebug trueでもどこにも出てる気配ないんだけど。
なんか最初のうちは1.1の時みたいにwebdebugに円柱のボタンがあった気もするんだけど・・・・
logにsfDoctrineLoggerっていうボタンはあるけどクエリーは何も出てない。

いろいろいじってるうちにおかしくなったのかな?

700:nobodyさん
09/03/29 01:22:25
>>699
ちょっと上のレスを見ろ

701:699
09/03/29 09:22:10 WiWw0VPX
>>700
ほうほうDebugPDOですか。
すんません、Doctrineの時はどうすればいいのでしょう?
paramかattributesになんか書くのでしょうか?

702:nobodyさん
09/03/29 11:32:28
つーか普通に出るし

703:nobodyさん
09/04/01 00:43:45
symfonyからODBC接続でDB2からデータ持ってきたいんだけど、なぜか日本語が化けるんです。
Z^Z^Z^みたいな。
何でですかね・・・。

704:nobodyさん
09/04/01 01:29:49
眠いからじゃないかなzzz

705:nobodyさん
09/04/01 10:57:37
>>703
DB2かぁ、動作報告あったっけ?

まずは propel db2 でgoogleじゃない?
あるいは doctrine db2 か。

706:nobodyさん
09/04/01 12:37:40
DB2の内部コードSJISにしてるとかじゃないの

707:nobodyさん
09/04/01 22:27:12
symfony1.0系で開発をしているのですが、
Validator、Helperなどが
マルチバイトに対応していない事わかりまし。
ソースコードのマルチバイト対応情報が
あればおしえてぷりーず。

と書いたところで
1.2はマルチバイト対応済みじゃん・・・
くやしいのでそのまま投稿。
なんでバックポートしてないんだ。

708:nobodyさん
09/04/03 12:08:01
OpenPNE以外でsymfony1.2を使ったオープンソースのものって何かないですか?
ソース読んで勉強したいのですが・・・

709:nobodyさん
09/04/03 21:10:14
バージョン上がるたびに諸々の変更を余儀なくされるsymfonyは採用されないだろ

710:nobodyさん
09/04/04 17:50:58
メジャーバージョンアップとマイナーバージョンアップの区別がつかない奴がいるとは思わなかった

711:nobodyさん
09/04/21 22:02:48 oOMQhPeY
responseにsetHttpMetaメソッドあるけど、
HttpじゃないMetaってあるの?
setMetaでよくね?

712:nobodyさん
09/04/24 00:06:42
>>711
ソース(AssertHelper.php)見ると、<meta http-equive...>と出力させたい場合は、addHttpMeta()で追加、
<meta name=...>と出力させたい場合は、addMeta()で追加するらしい。

symfony 1.2系には、setHttpMeta, setMetaは無いね。削除されたのかな?

1.2系では、sfResponseに直接追加しなくても、view.ymlで設定すればおk。


713:nobodyさん
09/04/25 21:56:50
symfony1.1.6なんですけど、
config_handlers.yml
で独自ハンドラを追加して、
そのクラスをlib直下においたら、アクセス時にその独自ハンドラが存在しないと
怒られるんですが、どうしてですかね・・・・。
debugがONだと動くのですが。。。

714:nobodyさん
09/04/26 23:35:53
>>713
prod環境(debug=off)では、複数のファイルの読み込みを避けるためなのか、いくつかのクラスをpackingしています。
このクラスの中には、sfAutoloadも含まれています。

packingする際、まず先に、config_handlers.ymlに設定された、「すべての」ハンドラをインスタンス化しようとします。

独自ハンドラについては、まだsfAutoloadがインスタンス化されていないため、オートロードに失敗します。

debugがonの場合、packingしないため、先にsfAutoloadがインスタンス化されます。
それゆえ、独自ハンドラもsfAutoloadを通して、読み込むことができる様になります。

この問題を解決するために、sfAutoloadに頼らず、手動でクラスファイルをinclude(require)します。

includeする場所は、ProjectConfigurationが最適でしょう。


715:714
09/04/26 23:40:24
蛇足ですが、sfAutloadが読み込まれていないからといって、
先にsfAutoloadを手動でincludeしてしまうと、その先で二重定義だと言われて、
実行時エラーとなってしまいます。

716:nobodyさん
09/04/27 07:39:55

URLリンク(www.namiten.com)

717:nobodyさん
09/04/27 12:34:04
塾所www

718:699
09/04/29 16:03:53 rB9MGWda
1.2 doctrineでSQlLのクエリーログが出なくなった原因わかりました。
ひつようない?いらない?一応張っておきます。

URLリンク(gomojp.blog77.fc2.com)

719:nobodyさん
09/04/30 16:07:02
なんでpropel、count()なんてしてしまうん

720:nobodyさん
09/05/07 12:16:55
propelでサブクエリーとJOINって出来る?
SELECT * FROM foo main JOIN (SELECT sub.id, MAX(sub.add_date) AS max_add_date FROM foo sub......) ON main.id = sub.id AND main.add_date = max_add_date WHERE ......
みたいなのが作りたいんですけど

最悪ONはWHEREに書いてもいいかな。
無理っぽいのかなあ。どうでしょうか?

721:720
09/05/07 12:19:38 SY3Om6u2
ああ、またデフォルトでsageはいってた。
専用ブラウザこの設定うざいな。しつれいしました。

あとpropelでというかCriteriaでの間違いでした。
お願いします。

722:720
09/05/07 12:38:05
すまん
検索キーワード変えたらすぐ見つかった
URLリンク(blog.gnetworks.co.jp)

723:714
09/05/07 22:58:24
>>720
複雑なクエリは、無理してCriteria通さずに、直接SQL渡した方が見通しがいいような気がする。

$stmt = Propel::getConnection()->prepare('select ...');
$stmt->bindValue(..); // パラメータを渡す必要があるなら
$stmt->execute();
while (($row = $stmt->fetch(PDO::FETCH_BOTH) != false) {
...
}


724:nobodyさん
09/05/08 02:48:43
クエリも使いまわしたりするからな。
直接SQL渡すより極力Criteriaで使ったほうがいい。

そういうプログラミングをしないならDoctrine使ったほうが良い

725:nobodyさん
09/05/08 07:23:57
クエリ使いまわすなら、どこかのテーブルクラスに入れとけばいいだけかと。
SQL直書きの方が見通しが良くなる事も普通にあると思う。
どっちがいいかというのは難しい問題だけど、その時々の決められた方針に従うとか。
>>724
しばらくPHPはほぼ触ってないんだけど、Doctrineはもう実用レベルなんだ。
見てみよう。



726:nobodyさん
09/05/16 04:48:31
Propelは取得するカラム増減するだけで、setとかhydrateとか自分でやらないかぎりモデルがまったく使えなくなるのがメンドイ。
てか、1.3からpoolとかしてるから、下手に自前でやると危険そう。そこでsave呼ばれたときを考えたりすると・・・
まあORマッパーなんだから、selectいじるなってのはあるんだろうが。

Doctrineってそういうの強そう?

727:nobodyさん
09/05/16 06:05:29
>>726
いや、その為にPeerBuilderで拡張できるようになってるわけだが。
BasePeerをちょっと拡張したクラス準備するだけでもいいし。
いくらでも手はあるし、そういうことができるように作られている。

728:nobodyさん
09/05/16 06:07:26
このひとのとか
URLリンク(code.google.com)

729:nobodyさん
09/05/19 14:29:31 qhW3ZTR1
キャッシュファイルが多すぎてsymfony ccがなかなか終わらないんだけど
どうしたらいいの。
サービス稼働中だとキャッシュの作成とバッティングして時間かかるんかなぁ
psでプロセス見るとD(割り込み不可=IOアクセス中)のままだ。
cache clearはサービスを止めて行うもの?

730:nobodyさん
09/05/19 14:36:50
てか、サービス止めて、
ディレクトリごとrm -rfした方がずっと速いかも・・

731:nobodyさん
09/05/19 16:47:50
>>729
コンテンツキャッシュはぶっちゃけSQLiteキャッシュ使ったほうが何かと勝手がいいぞ。
キャッシュの削除条件設定も柔軟に対応できるし。

ファイルキャッシュは増えてくると不都合が多すぎる。

732:nobodyさん
09/05/31 06:43:32 rQz6XN2i
1.2使ってます

DBにname address tel category file
とあってfileとcategoryはそれぞれ別で登録するようにしたいのですが
sfFormつかうとfileやcategoryを登録したら他のデータがきえちゃいます。
個別にフォームヘルパーつかって登録するとかみたいな方法しかないですか?


733:714
09/05/31 13:22:23
>>732
ORM何使ってる
Propel?
Doctrine?

Propelなら、
Modelの各フィールドに対して更新フラグが立っている場合のみ、Update対象列になる。
resetModifiedメソッド呼んで、更新対象外フィールドのフラグ折ってやれば、多分おk



Doctrineは...知らん


734:nobodyさん
09/05/31 13:24:24
>>733
名前欄残ってた。orz
関係ないから無視しといて。

735:nobodyさん
09/05/31 14:26:16 rQz6XN2i
>>733
あぁ、そうか・・・。
スケルトンのとおりにvalodator通した後そのまま
$myTabler = $form->save();
ってやってたから全部保存されちゃってたんですね。

必要なフィールドだけセットして保存しちゃえばよかったんだ
ありがとうございました。やってみます


736:735
09/05/31 15:59:53 rQz6XN2i
なんか結局1.0と似た感じになっちゃったorz
対話形式で進めていくものをつくってくと結局こうなるのかな

737:nobodyさん
09/06/04 08:41:11
バリデータでファイルがアップされているかの確認はどうるのでしょうか?

validate/test.ymlへ
file:
required: yes
のように記述してもうまく動きません。


738:nobodyさん
09/06/04 23:42:58
>>737
Symfonyのバージョンは1.0系 or 1.1系?

もしそうなら
URLリンク(symfony.xrea.jp)
の「ファイルのバリデータ」の通りに書いてる?


739:nobodyさん
09/06/10 18:11:14

嗚呼愛しのファビエンヌ
URLリンク(codezine.jp)

740:nobodyさん
09/06/10 18:22:34
公開がインタビューの半年後とか、やる気ねぇなぁ・・・。

741:nobodyさん
09/06/10 18:34:35
読み方フランチョスじゃないんだなワロス

742:nobodyさん
09/06/10 19:37:01
ついに大文字になりますて…
まるで大文字になるのをみんなが待ち望んでいたかのような書き方だな。

743:nobodyさん
09/06/10 20:20:53
正直DIはいらねーな

744:nobodyさん
09/06/10 23:17:18
本気でフランチョスだなんて思ってる奴いねぇだろw


745:nobodyさん
09/06/11 12:20:15
>>744
サイボウズのアキモトサンはそう思ってたんじゃね?w

746:nobodyさん
09/06/11 17:46:55
2ch大好き秋元さん

747:nobodyさん
09/06/13 14:40:36
symfony使うんで、sfFormとAjaxを上手く組み合わせたいと思うんだが難しいかな?
だらだら探したけど、互いをおいしく利用してみたいなのはみつからないんだよな。
javascriptHelperとsfFormって連動する設計になってないよね?

748:nobodyさん
09/06/14 03:30:08
いくらでもできるよ

749:nobodyさん
09/06/14 03:48:08

ヘルパの呼び出しは
sfContext::getInstance()->getConfiguration()->loadHelpers();

Javascript呼び出したければ
sfContext::getInstance()->getResponse()->addJavascript();

750:nobodyさん
09/06/18 17:31:00
今までsymfonyで動いてたサイトを移動したいんだけど
移動先のレンタルサーバがspl_autoload_register使えなくてsymfony動かないっぽいんですが
フレームワークを変えるしか方法ないですかね?

751:nobodyさん
09/06/19 10:12:40
レンタルサーバを変える

752:nobodyさん
09/06/24 00:44:44
>>739
フランチョス社長やったんか

753:nobodyさん
09/06/26 11:45:18
doctrineについて教えてください。
schema.yml の定義で下記
relations:
****:
foreignAlias: ****
*****:
class: *****
refClass: *****
foreignAlias: *****

foreignAlias, class, refClass, について詳しく説明しているサイトありますか?

754:nobodyさん
09/06/29 20:27:14
symfony 1.2で質問です。

ヘルパーをactionで使おうとしているのですがmyproject/lib/helperに格納されているものしか使えません。
module毎にmyproject/app/myapp/mymodule/lib/helper/MyHelper.phpという風にすれば使用できると思っていたのですが認識違いでしょうか?
教えてください。

755:nobodyさん
09/06/30 02:08:50
>>754
symfony標準のhelper
/myproject/app/myapp/modules/mymodule/lib/helper
/myproject/app/myapp/helper
/myproject/lib/helper

に加えて、各プラグインについて、
/myproject..../myplugin/modules/mymodule/lib/helper
/myproject..../myplugin/lib/helper

のみ

故に、
myproject/app/myapp/mymodule/lib/helper/MyHelper.php
ではなく、
myproject/app/myapp/modules/mymodule/lib/helper/MyHelper.php
とすれば、いけるんじゃない?

詳細は、sfApplicationConfiguration.class.phpのgetHelperDirsメソッドのソース読んでみて

756:nobodyさん
09/07/01 01:41:29
CoCが流行の昨今ymlの設定地獄なんて
時代遅れも甚だしいな。
こんなの流行るわけねーだろ。
CakePHPの爪の垢でも煎じてのんでろやこの屑FWが。

757:nobodyさん
09/07/01 07:14:10
いくらCoCにしても設定ファイルはいるだろ。

758:nobodyさん
09/07/01 22:39:19
Symfony 1.0になる前にちょっと使ったらymlをちょっと書き間違えると
Symfonyの深いところでエラーが出てもうダメポって挫折してCakePHPで
快適生活してるんだけど、最近のSymfonyはそこらへん快適になった?

759:nobodyさん
09/07/02 02:17:54
ヴァリデーターがフォームフレームワークになったからだいぶ減った感じだけど
そのフォームヘルパーでやたら苦労してる。
かなり使い込めれば快適なんだろうけどちょっと変わったことやろうとするとめちゃくちゃはまる

760:nobodyさん
09/07/03 01:03:55
CoCって、Symofnyだってデフォルトの規約もってるだろう。
さらに設定ファイルでいじれるだけで、そこがCakePHPより良いとか意味がわからん。
設定ファイルの糞さこそCakeの癌で改善されてるのに

761:nobodyさん
09/07/03 02:48:34
ちょっと書き間違えても動くからなぁ他のFWは
って事だろ

762:nobodyさん
09/07/03 05:58:37
CoCって言葉を使いたかっただけだろ。



763:nobodyさん
09/07/11 09:07:00
はまりもあるしドキュメント不足な面もあるが、慣れれば割と快適。
使い始めて半年くらい、いまはサクサクサイト構築していってる。

764:nobodyさん
09/07/11 21:46:17
うだうだ言うより、極めてしまえば、最近の有名どころは強力なツールになると思うんだがなぁ

765:nobodyさん
09/07/13 14:24:49

虎は何故強いと思うね?もともと強いからよ。



766:nobodyさん
09/07/22 02:18:54
ymlきめぇ

767:nobodyさん
09/07/22 11:03:44
htmlきめぇ

768:nobodyさん
09/07/22 22:55:16
>>766
XMLを手で記述するよりはましだと思うよ

もっとも、個人的にはJSONで十分なんだけどね


769:nobodyさん
09/07/28 23:40:23 jaMsZG3/
バッチで実行した処理で、コマンドラインからactionを実行したいんだけど
symfonyは標準でそういう手段提供してないの?


770:nobodyさん
09/07/28 23:54:07
init-batchとかあった
actionはあくまでweb経由で呼び出すんすかのー

771:nobodyさん
09/07/29 01:01:31
task でいけるんでねかな

772:nobodyさん
09/08/04 00:14:51
しっかし寂れたなw
2年くらい前の元気さはどこへいったw

773:nobodyさん
09/08/04 02:42:24
バージョンアップしてもサポートが半端なんだよな
バージョンアップ版のがサポート短いとか追っかけていく気にならん

774:nobodyさん
09/08/05 14:44:31
糞みたいだったzfのスレは伸びてるな
もう抜かれてしまったのか?

775:nobodyさん
09/08/06 01:56:34
Cake>>>Zend>>>>>>>>>>>>Symfony
だからな日本じゃ
日本人はもっさりが何よりも嫌いだからJSFとかそういうのも流行らない

776:nobodyさん
09/08/15 00:39:12
Zend、使われているかなぁ?

777:nobodyさん
09/08/15 02:38:08
Symfony使いから見たら使われてないように見えるのかもしれないけども
少なくともSymfonyよりは間違いなく使われてる

778:nobodyさん
09/08/15 17:19:25
cakeって別に速くないだろ
ciは軽いから速いが

779:nobodyさん
09/08/15 20:53:01
Symfonyに比べりゃ全然速いけどな

780:nobodyさん
09/08/15 23:30:37
CI は汚い。
Kohana が好き。

781:nobodyさん
09/08/20 12:06:22 QNoYFkWw
symfonyで作ったページがクロールされないと思って調べてみたら
トップページをwgetしてみたら404が帰ってきてた。
ブラウザで見ると普通なんだけど、何をどうやって調べれば解決するか
わからないので、誰か知恵を貸してください

782:nobodyさん
09/08/21 01:13:24
何その謎現象
apacheのログ見たら?

783:nobodyさん
09/08/21 02:56:50
User-Agent見て処理変えてたりしてるのかな?

784:781
09/08/21 11:40:39 gourhDGv
>782
普通はおこんないものですよね?
ログみたけど、よくわからんのです。wgetのときだけ404返してるだけで・・・

>783
UAをIEとかに偽装したり、Refererつけたりしてみましたがwgetなら404・・・。あとどこで判別してるんすかね・・・。ヘッダ全部出してみるしかないすかね。

rewriteの書き方が悪いのかな

785:nobodyさん
09/08/21 15:21:53
Zendでauの携帯からだけ404になったことならある
原因はmod_rewrite

786:nobodyさん
09/08/21 15:54:51
>>785
mod_rewriteの何が悪かったの?

787:nobodyさん
09/08/21 16:30:01
全部他人任せで解決しようとするなよ

788:nobodyさん
09/08/21 16:34:18
そんな注意するようなことでもなくね?
現象が謎すぎるから俺も興味あるよ

789:781
09/08/21 18:46:10 gourhDGv
>>787
>786は俺じゃないから怒らないであげてね

>>788,785
解決したら報告にくる


790:781
09/08/25 19:11:09 X6yGpm6m
すまん、まだ解決してない。
mod_rewriteはログはかせてみたけど、問題なさげだった。
symfonyの問題ぽい。

791:nobodyさん
09/08/26 00:11:36
勉強がてらにsymfony1.2を使ってみているのですが
デフォルトのCSSは無いのでしょうか?

デバッグツールバーやチェックマークのでるデフォルトのページには
スタイルが適用されていますが URLリンク(localhost)
にアクセスした場合には、チュートリアルのようなスタイルが適用されず
素っ気ないページになってしまいます。
高度なデザインは求めていないのですが、フレームワークを使う場合でも
cssから作るものでしょうか?

792:nobodyさん
09/08/26 11:26:43 1Yy9HhcH
>791
システム開発とデザインは別なので、そういうのがほしければ
CMSに求める。

793:791
09/08/28 08:36:33
>>792
そいうことですか。ご回答ありがとうございます



794:nobodyさん
09/09/05 18:27:09
URLリンク(www.ustream.tv)
ファビエンヌキター

795:nobodyさん
09/09/05 18:31:46
ドクトリンヌもフランチョス達が作ってたのか

796:nobodyさん
09/09/07 09:08:27
>>795
symfonyの開発陣にdoctrineの開発者が参加したのは最近のはずだよ

797:nobodyさん
09/09/08 18:12:02
railsだとセッションID生成するためのシークレットキーみたいなのを設定するが、
symfonyには見あたらないような。
その辺でセキュリティ的な問題とかないのかな。

798:nobodyさん
09/09/08 18:23:28
しかし英語圏ではsymfonyとCakeのシェアはどうなんだろ?
2ちゃんではCakeのが伸びてるようだけど。
自分は1プロジェクトでアプリが複数作れるので助かってる。
libの下にCMSのmoduleを作り込んでapp/modules/から使っていく感じ。
複数サイト構築に便利。


799:nobodyさん
09/09/08 18:25:27
>>791
亀レスだけどフリーのテンプレート使うと良いと思う。
海外は割と充実してる。
URLリンク(www.openwebdesign.org)

800:nobodyさん
09/09/08 22:47:03
>>797
この辺りかな?
URLリンク(blog.asial.co.jp)

801:nobodyさん
09/09/09 01:29:06
ああ、そうか、railsのあれはセッションキー作りのためのじゃなく
CSRF対策のキー作りだったね。勘違い。

802:nobodyさん
09/09/18 01:32:21
新バージョンが出た時アップデートしてる?
何かの具合で動かなくなったら・・と思ってなかなかアップデート出来ない
まぁテストケースをまとめておけばいいんだけど

803:nobodyさん
09/09/18 10:08:43
趣味レベルなら多少動かないところがあっても良いか、と思ってアップデートしてる。
1.2 -> 1.3はさすがにためらうけど。

804:nobodyさん
09/09/19 18:38:57 kqWMin9P
functionテストで、他のアプリケーションの操作をする方法はありますか?
「Frontendでコレを1にしたらBackendではこうなって、Frontendで2にしたらこうなるはず」
ってテストをしたいだけど、何かいい方法はないでしょうか?
ソースを少し斜め読みしてるんだけど、アプリケーションをまたいでリクエスト出す方法が見つからないっす。
・・・seleninumとか使ったほうが早い?

805:nobodyさん
09/09/20 08:14:08
1.1から1.2なんて悲惨なくらい互換性なかったからな

806:nobodyさん
09/09/21 22:45:51
CakePHPのスレは7スレ目まで逝ってるのに
なんでsymfonyのスレは1スレ目で止まってますかぁ?

807:nobodyさん
09/09/21 23:58:25
日本じゃ全然流行ってないからな
結局CakeかZendだよねやっぱり

808:nobodyさん
09/09/22 01:21:39
cakeは外からプロパティーにいきなりアクセスさせたりと色々ダサい

809:nobodyさん
09/09/22 09:00:46
2文字インデントの方がダサいと思う


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4812日前に更新/217 KB
担当:undef