フランチョスとsymfony
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/01/24(木) 21:26:07ID:???http://www.symfony-project.org/
コードスニペット
http://www.symfony-project.org/snippets/tag
プラグイン
http://trac.symfony-project.com/wiki/SymfonyPlugins
どうぞ つ
0499nobodyさん
2008/11/04(火) 09:52:03ID:???>ログイン状態扱ってたらほぼ毎actionでuser使う
使わねーよw
本当にSymfonyで開発したことあんのかw
あ、言っとくが、もちろん使うことはあるぞ。確かに良く使うほうではあるわな。
>$this->getUser()
けど、ちゃんとsecurity.ymlやらsetting.ymlやら設定しとけば「毎action」なんてこたぁねーだろ?
もし本当にそういう要求がある(AttributeやFlush使いまくりとか、ユーザー毎にやたらと細かい権限設定がある)んだったら、sfActions継承して新しい基底Actionクラス作ればいいだけ。
0500nobodyさん
2008/11/04(火) 11:05:36ID:???実際、mojavi時代にはcontroller,request,userがactionに渡されていた
それがsymfonyになり、いったん何も渡されなくなった
それが1.1以降また今度はrequestだけ渡されるようになった
requestだけを渡すくらいならuserを渡しても、誰も何も損しないだろう
requestとuserは両方ともコンテナで類似性が高く、
二つ渡ってくる方がバランス的に気持ちいい
シンプルな話じゃないか。
基底actionは書くのが当然だと俺も考えているが、それは別の問題だろう
0501nobodyさん
2008/11/04(火) 11:33:28ID:???釣りっていうのは君が今している内容の無いレスのことを言うんだぜ。
君の言う中学生のほうがまともなレスしてるぞ
>>499
確かにほぼ毎アクション使うってのはちょっと仕様的に破綻してるな。
ユーザIDみたいなのをテーブルに書き込ませたりするなら、
sfGuardPluginみたいにモデルにコンテキストから突っ込んで自動保存させたほうが
コード少なくて済むし。
>>500
Mojaviでも3.0で消えたぜ。3つ渡してたのはPHP4の仕様上の問題で仕方なく。
>requestとuserは両方ともコンテナで類似性が高く
そうでもない。それだったらクッキー操作が入る$responseも入れないと
バランス悪い。
0502nobodyさん
2008/11/04(火) 12:28:41ID:???最終的には審美的な問題だから、分からない人に何を言っても説得出来ないし、
ああ、君はそうなんですかとしか言えないが。
コンテナの話をしている時に
クッキーを担当しているという理由でresponseをあげる時点で決定的にセンスが欠けている。
0503nobodyさん
2008/11/04(火) 18:01:12ID:???まぁ、そう思うなら
「requestとuserは両方ともコンテナで類似性が高く、
二つ渡ってくる方がバランス的に気持ちいい」
ことをフランチョスに伝えてやってくれよ。
http://trac.symfony-project.org/report
こんなところでセンス語ってる時点で決定的にセンスが欠けている。
お前のセンスがいいならきっと反映されるぜ
0504nobodyさん
2008/11/04(火) 18:19:13ID:???片方だけ実装してバランスが良いとか…
0505nobodyさん
2008/11/04(火) 18:58:22ID:???コンテナなんて間違った言葉の使い方しちゃうから、話がややこしくなる。
自分がマイノリティなのを、周りがセンスないから…と言ってひきこもっちゃった子
の特集こないだNHKで見たわ。気をつけると良い。
0506nobodyさん
2008/11/04(火) 19:55:26ID:???良いこと教えてやるよ。
お前みたいな少数派でも対応できるように、symfonyには
core_compile.ymlって設定ファイルがある。
そこでsfActionsだけハックしたものを使うものが可能。
幸いsfActionsはたいしたことしてないんで、sfUserを突っ込むのも
簡単だろ?
まぁ他人のセンスを疑う前に、勉強しような!
0507nobodyさん
2008/11/06(木) 20:49:11ID:jbsmLZzy勉強もかねて、ログイン機能を作ってプラグインにしてみました。
ちょっと疑問に思ったのですが
プラグインが独自で使う設定ってどこに書かせるのがいいのでしょうか?
例えば、認証に使うテーブルクラスの名前やカラムの名前などを
とりあえずsetting.ymlに書いて読むようにしてあるのですが
よく考えたら、ログインの時だけ必要な設定を毎回メモリーに読み込むのは
微妙だと思ったんですよね。
モジュールはプラグインに入っているので、module.ymlに書かせるのは難しいと思うんですよ。
後は独自の設定ファイルを書くようにしてsfYamlクラスで読みにいくとか。
どういう風にするのが一般的・・・というのはおかしいですが、
皆さんどんな感じにしてます?
0509507
2008/11/06(木) 21:08:03ID:jbsmLZzyすいません。ちょっとわかりづらかったですね。
モジュールを含むようなプラグインで
アプリ全体で必要じゃない設定が必要なとき
設定ってどこに書かせるのがいいのでしょうか?
要約するとこんな感じです。
0510507
2008/11/06(木) 21:15:43ID:???moduleを作ればいいのか。
sfGuardAuthモジュールテンプレートをカスタマイズする
を読んでて気づいた。
試してみます。
0511nobodyさん
2008/11/07(金) 18:36:24ID:Oe+2PckL$bbsdata = BbsdataPeer::retrieveByPk($this->getRequestParameter('id'));
$this->bbsdata = BbsdataPeer::retrieveByPk($this->getRequestParameter('id'));
と書かれていますが、thisの有無の違いがわかりません。
初歩的な質問ですいませんが、お願いします。
0512nobodyさん
2008/11/07(金) 19:57:17ID:Oe+2PckLX アクションファイルの中のクラスによって、
○ アクションファイルの中のアクション(メソッド)によって、
0513nobodyさん
2008/11/07(金) 22:04:30ID:???テンプレートのなかで
<?php print_r($bbsdata->toArray());?>
ってやってごらん
0514nobodyさん
2008/11/08(土) 00:24:41ID:3C+cxs1Cそうだとしてもその理由がいまいちわかりません。
0515nobodyさん
2008/11/08(土) 14:15:35ID:???Symfonyがそういう風に作られているから。
・・・ま、確かに少々気味悪くはあるが、これは設計思想の問題だからしゃーない。
どーしても中身を知りたければ、__getと__setでググれ。
0516nobodyさん
2008/11/08(土) 17:14:49ID:???理由?
$this->setVar('bbsdata', Bbsdata.....
って書くのが面倒な人のためのショートカット
0517nobodyさん
2008/11/10(月) 19:06:23ID:95yh0Lxpこれは何故でしょうか?
例えばfoo-barというmoduleにしたいと思って
symfony propel-init-admin app foo-bar FooBar
とやっても
ttp://hoge.hoge.hoge/foobar
じゃないとアクセスできないし、ヘルパーなどで作られるURIもfoobarになってしまいます。
複数の単語を含むようなmoduleを作りたいときはアンダーバーじゃないとだめっぽいですね。
たしか厳密にいえば、アンダーバーはURLに含めてはいけなかったと思ったのですが。
sfController::forward()のしょっぱなでいきなり取り除いているので、
たぶん設定ではどうにもならないと思うのですが、どうにかなりますか?
0518nobodyさん
2008/11/10(月) 19:28:23ID:???アマゾンのURLとかみても(パラメータだけど)アンダーバーつかってるし。
0519nobodyさん
2008/11/10(月) 19:42:04ID:95yh0Lxpありがとうございます。
ホスト名でしたっけ?今ちょっと探してみたけど、見つからないし
そういわれてみるとそんな気もします。
まあ、アンダーバーでやりますか・・・
ところで公式にsymfonyで作られてたサイトの一覧見たいのありましたよね?
ためしに、symfonyで作られてたサイトのURLをみて
モジュール名どんな風にしてるのか見ようかと思ったのですが、見つからなくなっちゃいました。
知ってたら教えてください。
0520519
2008/11/10(月) 19:59:53ID:???http://www.symfony-project.org/forum/index.php/m/54793/?srch=module+name+hyphen#msg_54793
root作ればいけましたね。
いちいち作るの面倒なので、アンダーバーかそのまま続けてしまうかした方がよさそうですね。
慣れの問題だと思うけど、アンダーバーの入ってるURLってなんか気持ち悪くて。
0521nobodyさん
2008/11/10(月) 20:20:02ID:???0522nobodyさん
2008/11/13(木) 12:59:14ID:9D9L1EQKそのテーブルの主キーの名前を取得したいのですが、
なんか良い方法ありますか?
0523522
2008/11/13(木) 14:23:15ID:???Peer::getTableMap()で全部のカラムを取得してから・・・
こんな感じでやりました。
function get_primary_key($class_name)
{
$columns = call_user_func(array($class_name."Peer","getTableMap"))->getColumns();
$pk = array();
foreach($columns as $column)
{
if($column->isPrimaryKey()) $pk[] = $column->getColumnName();
}
return $pk;
}
なんか、効率悪そうですね。
Peerクラスに主キーの情報くらい直接持っててもよさそうな気もしますが。
複数のPeerとかOMクラスで同じメソッドを作りたいときはどうしてますか?
ピヘイビアは重くなりそうだし、BasePeerは何も継承してないのでカスタマイズできないので
PeerBulderを変えるか、多少重くなっても、ビヘイビアを選択するかですかね。
0524nobodyさん
2008/11/13(木) 20:54:44ID:???0525nobodyさん
2008/11/14(金) 08:14:39ID:???Criteria::CUSTOM を使って外からくる値をSQLに突っ込む時
quoteするメソッドってないんですか?
propelが1.3になるとadapterにquoteというメソッドがあるみたいですが
1.2の時はどうするんでしょうか?
別途自前で用意してもいいですけどあるなら使おうかと・・・
カラム名とかをバックスラッシュでquoteするのは見つけましたけどシングルquoteが見つかりません。
お願いします。
0526nobodyさん
2008/11/21(金) 18:59:55ID:teu4KGCRグラフ表示したいのですが、どのような流れでつくるのがいいでしょうか?
アクションから取得したデータをもとにどこかにテキストファイルを作って、それを読み込ませるという
流れでやろうと思っているんですが。
開発経験がほとんどないのでお願いします。
0527nobodyさん
2008/11/21(金) 23:11:15ID:MX0rvE3svalidate/action名.ymlの
fillinのconvertersに、自作の関数を入れたいんだが
自作の関数をどこに書けばいいの?
0528nobodyさん
2008/11/26(水) 06:34:11ID:???0529525
2008/11/26(水) 11:50:19ID:???addslashes
でいいのか。実際コードたどると使ってるところがありますね。
で、数字だったらキャストしてやると。
Zend_DbのquoteIntoみたいなのあればいいと思ったけど、まあ、なんか作るかな。
>>526
なんか質問が壮大すぎませんか?
もうちょっと的を絞ってお願いします。前レスを見ればわかると思いますが
ここの人たちは怖い人たちが多いので「PHPのぐだらない〜」のほうが向いてるかもしれません。
0530test
2008/11/28(金) 02:01:50ID:???どのような処理をすればいいのでしょうか?
0531nobodyさん
2008/11/29(土) 17:17:28ID:???0534nobodyさん
2008/11/30(日) 20:26:13ID:???0535nobodyさん
2008/12/01(月) 15:40:34ID:???0536nobodyさん
2008/12/02(火) 00:10:10ID:???ttp://code.google.com/p/symfony-doc-ja/wiki/whats_new_sf12
まぁ、1.1で学んだことが無駄にはならんとは思うが、また結構変わったな。
0537nobodyさん
2008/12/02(火) 05:23:30ID:???やっぱりDBがPDOになった(propelが1.3になった)周りの変更がでかかったな。
0538nobodyさん
2008/12/02(火) 09:17:20ID:???0539nobodyさん
2008/12/02(火) 09:46:52ID:???kwsk。doSelectRSとか、あの辺?
select直投げとかも使ってるから、結構インパクトあるかも。
まぁ、最低でも三ヶ月は移行しないけどね。1.1.0も結構バグあったし。
しかしSymfonyは結構サイクル短いな。
0540nobodyさん
2008/12/02(火) 17:14:50ID:???プロペルなんて使ってる奴は昭和
0541nobodyさん
2008/12/02(火) 18:28:40ID:???WHERE A AND ( B OR C )
みたいなカッコ表記するのってどうやるの?
0542nobodyさん
2008/12/02(火) 18:39:26ID:???$query->where('A AND ( B OR C )')
0544nobodyさん
2008/12/03(水) 09:49:01ID:???propelとかありえない。プロペラ付けて遙か彼方に飛んでいって欲しい。
で、パフォーマンスはどうなん?>ドク
0545nobodyさん
2008/12/03(水) 22:48:45ID:???Propel1.3のがパフォーマンス良いし、コードジェネレートで
IDEでの補完効いて楽。
ActiveRecordとか終りすぎ。
0546nobodyさん
2008/12/04(木) 02:16:41ID:???0547nobodyさん
2008/12/04(木) 11:42:48ID:???プラグインの都合でドクだと少々困る人は困るかもな
0548nobodyさん
2008/12/04(木) 22:27:30ID:???関心関心
0549nobodyさん
2008/12/04(木) 23:56:25ID:???1.1からpropel1.3使ってたから移行楽だった
0550nobodyさん
2008/12/05(金) 16:50:24ID:???sfValidatorAnd で複数のバリデーション実行する時って
1個でもエラーあったら次の処理終了とかできませんか?
あと、エラーメッセージを配列で取得したい時ってgetErrorSchemaで取得するしか方法ないのかな?
0551nobodyさん
2008/12/14(日) 09:23:29ID:???0552nobodyさん
2008/12/15(月) 10:57:09ID:???0553nobodyさん
2008/12/17(水) 18:05:07ID:MLlBkt3Tスカフォなんとかとか言いませんでしたっけ?
sca〜こんな書き出しだったきもする。
どっかで見た気がするんだけど、思い出せない。
確か緑色の本で見たのかな。
気持ち悪いので知ってたら教えてください
0554nobodyさん
2008/12/17(水) 19:11:37ID:???0556nobodyさん
2008/12/17(水) 19:42:48ID:???ありがとうございました
0557nobodyさん
2008/12/17(水) 19:52:23ID:???APCの使用率はどのくらい?
0559nobodyさん
2008/12/19(金) 04:06:53ID:???10%くらいはあるんじゃね
0560nobodyさん
2008/12/19(金) 14:34:21ID:???ここいいな。fastcgiだし
0561nobodyさん
2008/12/22(月) 14:49:59ID:???もうここに来る奴には用済みか?
symfony propel:data-loadで
Class '?JobeetJob' not found in /usr/share/pear/symfony/plugins/sfPropelPlugin/lib/addon/sfPropelData.class.php
ってでるわ。
一度だけ成功したんだけれど、最初からもう一度やってみようと思ったら、またでるようになった。
なんか抜けてるのかな?
0562nobodyさん
2008/12/22(月) 15:32:14ID:???0563561
2008/12/22(月) 15:54:53ID:???php symfony propel:build-modelですよね。
してます。
分からないので最初からもう一度やってみます。。。
0564nobodyさん
2008/12/22(月) 18:44:54ID:???0565561
2008/12/22(月) 19:40:37ID:???キャッシュクリアもやってます。
1.0以来久々だったので復習がてらやってるんですけど。
以前はあまり悩むことはなかったのですが。
日本語訳サイトと本家を行ったり来たりしてるから、何か間違ってるかも。
明日も休みだし、ゆっくりやるか。
0566nobodyさん
2008/12/22(月) 20:26:14ID:IJDiGLGOバージョンはいくつですか?
私は1.1.6で同じ症状で困ってます。
クラス名に特定の名前を使うと出ます。
スキーマに
t_condition:
_attributes: { phpName: Condition }
id:
name: {type:varchar(255), required: true}
name_s: {type:varchar(255)}
sort_order: {type:integer, default:0, required: true}
created_at:
updated_at
fixturesに
Condition:
trafic:
name: "test"
sort_order: 1:
これでsymfony propel-build-all-load sysすると
Unknown class "Condition".
と例外投げます。
このままクラス名をHogeとかに変えるとうまくいきます。
0567561
2008/12/23(火) 04:55:42ID:???1.2.1です。
>561の自分のレスを見るとクラス名に「?」が入ってるな。。。
設定ファイルの改行コードがくさい気がしてきた…。
明日、再度頑張ってやってみよう。
0568nobodyさん
2008/12/25(木) 20:37:41ID:???0569nobodyさん
2008/12/26(金) 07:37:20ID:???0570nobodyさん
2008/12/26(金) 22:09:47ID:???ttp://wiki.rubyonrails.org/rails/pages/Framework+Performance
自鯖で運用する場合パフォーマンスからみても
RailsよりPHP+Symfonyを選択する理由はなし?
0571nobodyさん
2008/12/27(土) 01:43:38ID:???一人でシコシコやってるだけなら好きにすればいい。
0572nobodyさん
2008/12/27(土) 02:09:03ID:???phpがwebアプリケーションのシェアとっちゃったから、急激な逆転はないでしょ
0573nobodyさん
2008/12/27(土) 11:09:40ID:???DBに接続しない、単純なページ表示するのにも、キャッシュが効いていない場合は
どうなってんだってくらいRailsは表示に時間がかかる。
じゃあキャッシュ効かせればいいじゃんって話なんだけど、
ちょっとした情報を取ってきて表示が変わるようなページに対しては、
毎回表示が遅くなる、という事に。
DBまわりは、自分はPropel等使ってないから単純な比較は出来ないな。
個人的には、パフォーマンスはPHP、書きやすさはRuby(Rails)な感じ。
0574570
2008/12/27(土) 22:14:46ID:???どうひいき目に見てもPHPのが速かった・・・
0575nobodyさん
2008/12/28(日) 04:54:43ID:???0577nobodyさん
2009/01/04(日) 23:00:05ID:???0578nobodyさん
2009/01/05(月) 08:37:49ID:???0580nobodyさん
2009/01/07(水) 00:42:52ID:???日本人はやる気ないなぁ。
確かに落ち目っぽいし。
0581nobodyさん
2009/01/07(水) 00:59:06ID:???0582nobodyさん
2009/01/07(水) 11:59:39ID:E9TXficjエンジニアに英語は必須でしょ。勉強しようよ。
そういう言う俺は公文の中学生英文法を勉強してるへたれだけど。
0583nobodyさん
2009/01/08(木) 10:30:11ID:RWe/YoFS0584583
2009/01/08(木) 14:04:48ID:RWe/YoFSactionでやらないで、generatorでやってしまいました。
actionだと
Propel::getDatabaseMap($connectionName);
でDatabaseMapを取得して、どうにかするのかな?
試してないけど。
0585nobodyさん
2009/01/12(月) 05:16:23ID:???doctrine-build-all-reload
すると、データベースを一回ドロップして作りなそうじゃないですか?
その時、encodingの値を無視してDEFAULT CHARACTER SET latin1で作っちゃうんですけど
設定でどうにかなりますか?
doctrine-build-all-reloadを使わないとか、mysqlの設定をいじってデフォルト値を変えちゃえばどうにかなるとは思うのですが
symfony側でどうにかならないかなあ。
0586585
2009/01/12(月) 05:17:13ID:JXhDeiPxすいません。
0587nobodyさん
2009/01/17(土) 00:20:55ID:LLHZVk4wMySQLのENUM型みたいなの。
イメージとしてはこんな感じです。
propel:
customer:
id: ~
sex: [male, female]
0588nobodyさん
2009/01/17(土) 02:22:45ID:???ORMで定義するんじゃないの?
0589587
2009/01/18(日) 05:03:02ID:cj4gRIwuちょっとよく分からなかったので、とりあえず保留・・・
別テーブル作ってmale, femaleの2つのレコードを作って対処しました。
別の質問なんですけど、generator.yml に password, password2 という
2つのフィールドを定義しています。
modules/user/validate/edit.yml というバリデータを用意して2つのフィールド
ともにrequiredにして、sfCompareValidatorで2つのパスワードが一致しているか
チェックしてます。
それ自体はとりあえず動作したのですが、やりたい事はユーザーの新規作成
の時はパスワード入力は必須にして、更新の場合は値の入力は任意で、
値を入力した場合のみ2つが一致するかチェックさせたいです。
ゴリゴリ書けば出来ると思いますが、一番楽な方法ってどんなんですか?
0590nobodyさん
2009/01/18(日) 11:39:22ID:???シコシコ書くしかないね。
0592nobodyさん
2009/01/22(木) 16:52:06ID:???これでフォーム周りがよくなったの?
0593nobodyさん
2009/01/22(木) 22:02:55ID:???悪くなった。
0595nobodyさん
2009/01/24(土) 21:08:57ID:BN/V3l3xpostとcommentという2つのモジュールがあるやつです。
postのedit画面でcommentの一覧表示をさせてますが、
これと同じ事をadmin generator(? generator.yml を使うやつ)で
できませんかね。
0598nobodyさん
2009/01/29(木) 21:43:36ID:rSa/9joZApacheにて、BASIC認証・SSL・nonSSL
の3つのディレクトリで構成したいのですが、
symfonyに適合させるためには、
webディレクトリ下にディレクトリを作成して、
フロントコントローラを移動するのが
ベストでしょうか?
■ このスレッドは過去ログ倉庫に格納されています