フランチョスとsymfon ..
[2ch|▼Menu]
454:nobodyさん
08/10/22 11:49:18 xQzdLTf7
1.0=>1.1にありました?見逃したかな・・・
フィルターはやめてresponseに注入?したって書いてあるのは見つけたのですが。
報告ですか・・・がんばってみますが英語書くのはちょと・・

もう一点お願いします。
URLリンク(www.symfony-project.org)

1つのプロジェクト内で複数のアプリケーション
で、サブドメインじゃなくて、フロントコントローラーを一個下の階層に移動するのをやりたいのですが
define('SF_ROOT_DIR', realpath(dirname(__FILE__).'/../..'));
は利かなく無くなっているようです。

フロントコントローラーのProjectConfigurationのインクルード先を
require_once(dirname(__FILE__).'/../../config/ProjectConfiguration.class.php');
に変えればとりあえず動くのですが、css,jsを読めません。

例えばその階層を/hogeだとしてcss、jsは/hoge/css、/hoge/jsなどを作ればよめますが、
/sfも/hoge/sfになってるので/sf以下のファイルにアクセスできなくなってしまいます。
Aliasは.htaccessでは出来ないのでroot権限の無いサーバーでは面倒かなと。

どんな風にやるとよいのでしょうか?
お願いします。

455:nobodyさん
08/10/22 22:41:45
そろそろ1.0から1.1に変更しようと思うんだけど
URLリンク(code.google.com)
に書いてある方法でアップグレードした方いますか?
いれば実際に注意点とかあれば教えてください。

456:nobodyさん
08/10/23 02:01:05
まぁ、あまりお勧めしないとだけ言っておく。
規模次第だけど、結構手間。

457:nobodyさん
08/10/23 04:09:02
>>447
つけたしだけど、廃止されてるのはfilters.ymlでの設定で、web_debugはsetting.ymlでは使えるよ
prod環境でツールバー出すときは、factories.ymlでlogの設定を修正してsetting.ymlでweb_debugをonにしないと駄目だな

458:nobodyさん
08/10/24 16:11:28 ebeBY5Qd
MySqlの
varchar(255) binary
をpropelで定義するのは無理っぽいですか?
symfony propel-build-allした後にalter ~するんでしょうか?

459:nobodyさん
08/10/25 03:45:44
sfFormでinput_date_tagのrich=trueに該当するの無くないか…?

460:nobodyさん
08/10/26 00:58:37
>>459
使いたかったら自分でビューに記述すりゃよくね?
他のところはrenderRowしてさ。
そういうことぢゃなく?

461:nobodyさん
08/10/26 01:19:58
>>460
echo $formで済むものをなんでわざわざそんな無駄踏む必要あるんだよwwwww
普通にwidgetクラスつくればいいだけだろうがw

462:460
08/10/26 18:22:01
>>461
そーゆーモンかね。

まぁ、可能な限りecho $formやrenderRowで済まそうとすればそれもアリか。せっかくsfForm使うんだもんな。
漏れは「ヘルパーあるんだからそれ使えばいいぢゃん」と思うが、これはバラでrenderLabelやrenderErrorしてるからなんだろう。

463:460
08/10/26 18:27:20
念の為追記。

一応、compat_10しなくても、フォームヘルパーもオブジェクトヘルパーも動く。
もちろん、本当に(まったく)同じ動作をするかはしらん。
input_date_tagが動くかどうかも試してないw

464:nobodyさん
08/10/27 02:41:04
idだけを変えるforeachの中でlink_toを繰り返し呼ぶのって気持ち悪いな
マッピングって結構コストあるじゃん
単にidをハメるだけでいいベースのURLを取得できればいいんだが

465:nobodyさん
08/10/27 03:14:53
sf_contextみたいな標準でviewで使える変数を他にも定義したいんだが
それはsfContextのfilterTemplateParametersで定義してる。
sfContextをオーバーライドするのは色々まずいよね
どうすればできる?

466:nobodyさん
08/10/27 03:15:03
url_forでURLだけ作ってIDだけまわすとかできない?

467:nobodyさん
08/10/27 03:30:17
>>465
app.ymlで定義してテンプレート内でsfConfig::getで取得するとか

468:nobodyさん
08/10/27 04:14:08 kNx8sH92
アクセスコントロールについての質問です。
secureをonにしたアクションに権限なしアクセスした時、
モジュールごとに、リダイレクト先アクションを変えたいのですが、
settings.ymlではそういった細かい設定は出来ませんよね?
やはり、preExecuteなどで自分でチェックするしかないのでしょうか?

469:nobodyさん
08/10/27 07:45:55
>>463
それがどうした

470:nobodyさん
08/10/27 09:40:42
>>464
そういうのは自分で作ってコミットするんです。

471:nobodyさん
08/10/27 11:29:34
>>468
modules/config/settings.yml
に書いたんじゃだめなんでしたっけ?
試してなけど、より細かい範囲?の設定がうわがかれるからいけそうだけど


472:nobodyさん
08/10/27 11:30:24
modules/名前/config/settings.yml
間違えた

473:nobodyさん
08/10/27 11:45:10 x9xrCR0d
コーディング規約にクラス名とそのファイル名に関する記述が見つからないんですけど
クラス名は小文字ではじめてラクダ?lowerCamelCaseっていうですか?
でファイル名はclassName.class.phpみたくclassを入れるのでしょうか?

modelの中に作られるORMのファイルが違うし、
クラス名って大文字ではじめるのが、
ほとんどの言語で規約になってるじゃないですか?

小文字ではじめるって言うのsfだけに限ったことですか?
なんか気持ち悪くて・・・

474:nobodyさん
08/10/27 22:20:04
>>473
URLリンク(symfony.xrea.jp)
ここにあるだろうが。なんでこんなものも見つけられないんだ。

475:nobodyさん
08/10/27 23:27:27
>>471
レスありがとうございます
それも試してみたのですが、無理でした
ただ自分で書いても、わりとアッサリ出来ました
飛び先が一つしか設定できないっていうのは正直不可解な仕様です
みんな不満なくやっているのでしょうか・・

476:473
08/10/28 14:53:05
>>474
レスありがとうございます。
すいません。その章はざっと読み飛ばしてました。

クラス名はUpperCamelCaseで良いみたいですね。
でも
UpperCamelCase is the standard for class and variable naming.
っておかしくないですか?変数の名前?
変数はlowerCamelCaseですよね?

まあ、そんなに気にすることないのかな。
プラグインとか入れてみるとクラス名がlowerCamelCaseになってるの多いけど
あれって、厳密に言えば規約違反ってことですよね?

こんな感じでやっちゃいます。
クラス名:UpperCamelCase
メソッド・プロパティ:lowerCamelCase
ファイル名:ClassName.class.php

477:nobodyさん
08/10/28 23:12:32
うちの会社では、viewはデザインからテンプレートのコーディングまでデザイナーがやるのですが
アクションで設定したテンプレートで使える変数の一覧をページで簡単に確認できるようにしようと思ってます。

いろいろ試してみたのですが、テンプレートに渡した変数はActionでしか取得できないっぽいですよね?
そんなことないですか?

postExecuteで例えばセッションとかResponseにセットして、Filterで表示とか考えたのですが
postExecuteを全モジュールに作るのもめんどいし
またActionの独自クラスを作ったとしても、モジュール作った後に継承元を変えるのも
いまいちな感じなんですよね。

MyUserにsetすればweb_debugツールバーで見れるんですけど、深い階層の配列が見づらいし・・・


テンプレにアサインした変数の一覧表示なんて、ものすごい要望の多そうな機能なので
いくらでもありそうだけど、なんか見逃してたりします?

また、うまい方法もしくはプラグインなどあったらお願いします。

478:447
08/10/29 13:12:01 eltEv9kS
あ、sageで書いてましたすいません。

なんがごちゃごちゃ書いてますけど、一言で表現すると
アクションでテンプレートに渡した変数の一覧ってfilterで取得できませんか?
できれば、アクションを変更しないで、filterのみで実現したいです。

って感じです。
よろしくお願いします

479:nobodyさん
08/10/29 19:30:27
フランチョス喧嘩してんの?

480:nobodyさん
08/10/29 21:06:31
>>477
エクリプスのプラグイン作ってあるんで、100万くらいで売ってあげるよ

481:nobodyさん
08/10/31 15:21:57
>>480
あ、じゃあお願いします
振り込みますので名義と口座番号と暗証番号お願いします。

ところで、フランチョスってなんですか?

482:nobodyさん
08/10/31 23:10:16
>>481
了解です。
引き出しますので名義と口座番号と暗証番号お願いします。

483:nobodyさん
08/11/01 10:57:37
>>481
ためしに通報してみた

484:nobodyさん
08/11/01 17:09:43
svnの1.2の新しいadmin generatorで
$attributes->getRawValue()
これをつかってるキャッシュの行でコケるんだけど、
開発途中でバグってるだけだよね

485:nobodyさん
08/11/02 15:59:51
1.2Beta1きましたよ

486:nobodyさん
08/11/03 12:52:47
そろそろ新しい書籍が欲しいところですなぁ。
フォーム周りとかだいぶ変わったし。

487:nobodyさん
08/11/03 13:34:20
actionにrequestだけ渡してくるのってアンバランスな仕様だな
userも渡してこいよ

488:nobodyさん
08/11/03 17:01:25
どう考えてもuserよりrequestのが圧倒的に多いだろ。
userまで渡す方がアンバランス

489:nobodyさん
08/11/03 21:08:36
1.1のsfValidatorNumberバグってるな
0入れるとrequiredのエラーが発動しやがる

490:nobodyさん
08/11/03 21:21:12
>>488
普通セッション使わない規模の方がむしろ少ないだろ
ショボグラマー乙

491:nobodyさん
08/11/03 22:44:00
>>490
つか、なんで$this->getUserぢゃいかんの>

492:nobodyさん
08/11/03 22:54:20
それを言うなら$this->getRequest()でもいいじゃんって話になる
メソッドの最初から使えると、
どのタイミングで$user = $this->getUser()するかとか、
あれこの時は既に$user存在してるっけ、とかいちいち考えなくていいのがいい

493:nobodyさん
08/11/03 23:28:14
>>490
アホかお前。
頻度のこと言ってるのもわからないの?
だったら動的タイトル設定やPDF用のヘッダ操作だって
使わない規模の方がすくない。
ということで$responseも実装。
なんてパラメータ増やしてたらキリないだろww

494:nobodyさん
08/11/03 23:36:15
ほぼ毎アクション使う$requestに対してsfUserは?
って考えればわかるよね。

>あれこの時は既に$user存在してるっけ、とかいちいち考えなくていいのがいい
こんなこと考えてる時点でショボグラマー

495:nobodyさん
08/11/04 00:21:03
ログイン状態扱ってたらほぼ毎actionでuser使う
自分の分からないことをまったく想像できないのがショボグラマーの特徴だな
第二引数で渡して使うも使わないも自由にする方がいい
こんなことは議論の余地すらねーよ素人

496:nobodyさん
08/11/04 01:18:55
                    ,===,====、
                   _.||___|_____||_
..               ∧_∧  /||___|^ ∧_∧
..               (・ω・`)//||   |口| |ω・` )
.             ./(^(^ .//||...||   |口| |c  )
.....            ∧_∧ / //  ||...||   |口| ||し      
.......        (・ω・`) //....  ||...||   |口| ||    
         /(^(^ //  ....  .||...||   |口| ||        スレは仲良く使ってね
 ""    :::'' |/   |/ '' "  :::  ⌒  :: ⌒⌒⌒ :: ""  `
 :: ,, ::::: ,, ; ̄ ̄ ̄  "、 :::: " ,, , :::   " :: " ::::  "


                    .    ∧_∧
                   ===,=(´・ω・`)
                   ||___|_゚し-J゚||_
                ∧_∧/ //.___|^∧_∧
               (´・ω・`) /||    |口|(´・ω・`)
              ./(^(^//|| ||    |口|⊂ _)
              ∧_∧ /./  || ||    |口| ||    ∧_∧
   ∧_∧    (´・ω・`)/  ...|| ||    |口| ||  (´・ω・`)
  (´・ω・`) /(^(^/ /      .|| ||    |口| ||    ゚し-J゚
 "" ゚し-J゚:::'' |/  |/ '' " :: ":::::⌒  :: ⌒⌒⌒ :: ""  `
 :: ,, ::::: ,, " ̄ ̄  "、 :::: " ,, , :::   " :: " ::::
      ぼくたちは、なかよくつかってるよ

497:nobodyさん
08/11/04 08:31:20
>>492
>それを言うなら$this->getRequest()でもいいじゃんって話になる
まったくそのとおり。
だから実際$requestは省略できる。
よって$userも要らない。
>>495
Responseは?Loggerは?Contextは?
>あれこの時は既に$user存在してるっけ、とかいちいち考えなくていいのがいい
こんなことで考えるのに、どの引数がどのオブジェクトに設定されるのかは
迷わないの?

498:nobodyさん
08/11/04 09:34:40
>>497
釣りか?技術者とは思えない論理展開で言葉もない
中学生もsymfony使ってるんだな

499:nobodyさん
08/11/04 09:52:03
>>495
>ログイン状態扱ってたらほぼ毎actionでuser使う
使わねーよw
本当にSymfonyで開発したことあんのかw

あ、言っとくが、もちろん使うことはあるぞ。確かに良く使うほうではあるわな。
>$this->getUser()
けど、ちゃんとsecurity.ymlやらsetting.ymlやら設定しとけば「毎action」なんてこたぁねーだろ?
もし本当にそういう要求がある(AttributeやFlush使いまくりとか、ユーザー毎にやたらと細かい権限設定がある)んだったら、sfActions継承して新しい基底Actionクラス作ればいいだけ。

500:nobodyさん
08/11/04 11:05:36
よく使う方ならそれで充分じゃないか
実際、mojavi時代にはcontroller,request,userがactionに渡されていた
それがsymfonyになり、いったん何も渡されなくなった
それが1.1以降また今度はrequestだけ渡されるようになった
requestだけを渡すくらいならuserを渡しても、誰も何も損しないだろう
requestとuserは両方ともコンテナで類似性が高く、
二つ渡ってくる方がバランス的に気持ちいい
シンプルな話じゃないか。
基底actionは書くのが当然だと俺も考えているが、それは別の問題だろう

501:nobodyさん
08/11/04 11:33:28
>>498
釣りっていうのは君が今している内容の無いレスのことを言うんだぜ。
君の言う中学生のほうがまともなレスしてるぞ

>>499
確かにほぼ毎アクション使うってのはちょっと仕様的に破綻してるな。
ユーザIDみたいなのをテーブルに書き込ませたりするなら、
sfGuardPluginみたいにモデルにコンテキストから突っ込んで自動保存させたほうが
コード少なくて済むし。

>>500
Mojaviでも3.0で消えたぜ。3つ渡してたのはPHP4の仕様上の問題で仕方なく。
>requestとuserは両方ともコンテナで類似性が高く
そうでもない。それだったらクッキー操作が入る$responseも入れないと
バランス悪い。




502:nobodyさん
08/11/04 12:28:41
ふーん。センスない奴が多いんだな
最終的には審美的な問題だから、分からない人に何を言っても説得出来ないし、
ああ、君はそうなんですかとしか言えないが。
コンテナの話をしている時に
クッキーを担当しているという理由でresponseをあげる時点で決定的にセンスが欠けている。

503:nobodyさん
08/11/04 18:01:12
>>502
まぁ、そう思うなら
「requestとuserは両方ともコンテナで類似性が高く、
二つ渡ってくる方がバランス的に気持ちいい」
ことをフランチョスに伝えてやってくれよ。
URLリンク(trac.symfony-project.org)


こんなところでセンス語ってる時点で決定的にセンスが欠けている。
お前のセンスがいいならきっと反映されるぜ

504:nobodyさん
08/11/04 18:19:13
実際responseとrequestでクッキー行き来してるしな。
片方だけ実装してバランスが良いとか…

505:nobodyさん
08/11/04 18:58:22
まぁ同じパラメータホルダーだから類似してるって気持ちは分からなくも無いけどな。
コンテナなんて間違った言葉の使い方しちゃうから、話がややこしくなる。
自分がマイノリティなのを、周りがセンスないから…と言ってひきこもっちゃった子
の特集こないだNHKで見たわ。気をつけると良い。

506:nobodyさん
08/11/04 19:55:26
>>495
良いこと教えてやるよ。
お前みたいな少数派でも対応できるように、symfonyには
core_compile.ymlって設定ファイルがある。
そこでsfActionsだけハックしたものを使うものが可能。
幸いsfActionsはたいしたことしてないんで、sfUserを突っ込むのも
簡単だろ?
まぁ他人のセンスを疑う前に、勉強しような!

507:nobodyさん
08/11/06 20:49:11 jbsmLZzy
sfGuardPluginが独自のテーブルを作っちゃったりするのが気持ち悪いのと
勉強もかねて、ログイン機能を作ってプラグインにしてみました。

ちょっと疑問に思ったのですが
プラグインが独自で使う設定ってどこに書かせるのがいいのでしょうか?

例えば、認証に使うテーブルクラスの名前やカラムの名前などを
とりあえずsetting.ymlに書いて読むようにしてあるのですが
よく考えたら、ログインの時だけ必要な設定を毎回メモリーに読み込むのは
微妙だと思ったんですよね。

モジュールはプラグインに入っているので、module.ymlに書かせるのは難しいと思うんですよ。
後は独自の設定ファイルを書くようにしてsfYamlクラスで読みにいくとか。

どういう風にするのが一般的・・・というのはおかしいですが、
皆さんどんな感じにしてます?


508:nobodyさん
08/11/06 21:02:11
>>507
sfGuardPluginを使うのが一般的という感じにしてます

509:507
08/11/06 21:08:03 jbsmLZzy
>>508
すいません。ちょっとわかりづらかったですね。

モジュールを含むようなプラグインで
アプリ全体で必要じゃない設定が必要なとき
設定ってどこに書かせるのがいいのでしょうか?

要約するとこんな感じです。

510:507
08/11/06 21:15:43
あ、そうか
moduleを作ればいいのか。

sfGuardAuthモジュールテンプレートをカスタマイズする

を読んでて気づいた。
試してみます。

511:nobodyさん
08/11/07 18:36:24 Oe+2PckL
アクションファイルの中のクラスによって、

$bbsdata = BbsdataPeer::retrieveByPk($this->getRequestParameter('id'));
$this->bbsdata = BbsdataPeer::retrieveByPk($this->getRequestParameter('id'));

と書かれていますが、thisの有無の違いがわかりません。
初歩的な質問ですいませんが、お願いします。

512:nobodyさん
08/11/07 19:57:17 Oe+2PckL
訂正

X アクションファイルの中のクラスによって、
○ アクションファイルの中のアクション(メソッド)によって、

513:nobodyさん
08/11/07 22:04:30
>>511
テンプレートのなかで
<?php print_r($bbsdata->toArray());?>
ってやってごらん

514:nobodyさん
08/11/08 00:24:41 3C+cxs1C
テーンプレートから参照するためにthisをつけるということでしょうか?
そうだとしてもその理由がいまいちわかりません。

515:nobodyさん
08/11/08 14:15:35
>514
Symfonyがそういう風に作られているから。

・・・ま、確かに少々気味悪くはあるが、これは設計思想の問題だからしゃーない。
どーしても中身を知りたければ、__getと__setでググれ。

516:nobodyさん
08/11/08 17:14:49
>>514
理由?
$this->setVar('bbsdata', Bbsdata.....
って書くのが面倒な人のためのショートカット

517:nobodyさん
08/11/10 19:06:23 95yh0Lxp
moduleの名前にハイフンを入れても、forward時に勝手に取り除くようになってるのですが
これは何故でしょうか?

例えばfoo-barというmoduleにしたいと思って
symfony propel-init-admin app foo-bar FooBar
とやっても
URLリンク(hoge.hoge.hoge)
じゃないとアクセスできないし、ヘルパーなどで作られるURIもfoobarになってしまいます。

複数の単語を含むようなmoduleを作りたいときはアンダーバーじゃないとだめっぽいですね。
たしか厳密にいえば、アンダーバーはURLに含めてはいけなかったと思ったのですが。

sfController::forward()のしょっぱなでいきなり取り除いているので、
たぶん設定ではどうにもならないと思うのですが、どうにかなりますか?

518:nobodyさん
08/11/10 19:28:23
普通にアンダーバーつかってるけど、禁止はホスト名だけじゃない?
アマゾンのURLとかみても(パラメータだけど)アンダーバーつかってるし。


519:nobodyさん
08/11/10 19:42:04 95yh0Lxp
>>518
ありがとうございます。
ホスト名でしたっけ?今ちょっと探してみたけど、見つからないし
そういわれてみるとそんな気もします。

まあ、アンダーバーでやりますか・・・

ところで公式にsymfonyで作られてたサイトの一覧見たいのありましたよね?
ためしに、symfonyで作られてたサイトのURLをみて
モジュール名どんな風にしてるのか見ようかと思ったのですが、見つからなくなっちゃいました。

知ってたら教えてください。


520:519
08/11/10 19:59:53
公式でこんなの見つけました
URLリンク(www.symfony-project.org)

root作ればいけましたね。
いちいち作るの面倒なので、アンダーバーかそのまま続けてしまうかした方がよさそうですね。
慣れの問題だと思うけど、アンダーバーの入ってるURLってなんか気持ち悪くて。

521:nobodyさん
08/11/10 20:20:02
ハイフンの方が気持ち悪い

522:nobodyさん
08/11/13 12:59:14 9D9L1EQK
Peerクラスの名前がわかってて
そのテーブルの主キーの名前を取得したいのですが、
なんか良い方法ありますか?


523:522
08/11/13 14:23:15
すいません。見つけました。
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を変えるか、多少重くなっても、ビヘイビアを選択するかですかね。

524:nobodyさん
08/11/13 20:54:44
おとなしくビルダークラス作ってカスタマイズしてろよ

525:nobodyさん
08/11/14 08:14:39
1.1.4を使ってます。
Criteria::CUSTOM を使って外からくる値をSQLに突っ込む時
quoteするメソッドってないんですか?

propelが1.3になるとadapterにquoteというメソッドがあるみたいですが
1.2の時はどうするんでしょうか?
別途自前で用意してもいいですけどあるなら使おうかと・・・
カラム名とかをバックスラッシュでquoteするのは見つけましたけどシングルquoteが見つかりません。

お願いします。

526:nobodyさん
08/11/21 18:59:55 teu4KGCR
アクションから取得したデータでCSVファイルを作成し、そのデータをもとに
グラフ表示したいのですが、どのような流れでつくるのがいいでしょうか?

アクションから取得したデータをもとにどこかにテキストファイルを作って、それを読み込ませるという
流れでやろうと思っているんですが。
開発経験がほとんどないのでお願いします。

527:nobodyさん
08/11/21 23:11:15 MX0rvE3s
symfony 1.0使ってるものです。
validate/action名.ymlの
fillinのconvertersに、自作の関数を入れたいんだが
自作の関数をどこに書けばいいの?

528:nobodyさん
08/11/26 06:34:11
1.0.19キター

529:525
08/11/26 11:50:19
突っ込む値が文字列ならシングルクオートのみをクオートすればいいから
addslashes
でいいのか。実際コードたどると使ってるところがありますね。
で、数字だったらキャストしてやると。

Zend_DbのquoteIntoみたいなのあればいいと思ったけど、まあ、なんか作るかな。

>>526
なんか質問が壮大すぎませんか?
もうちょっと的を絞ってお願いします。前レスを見ればわかると思いますが
ここの人たちは怖い人たちが多いので「PHPのぐだらない〜」のほうが向いてるかもしれません。

530:test
08/11/28 02:01:50
アクションで取得したデータをそのままテキストファイルに流し込むには
どのような処理をすればいいのでしょうか?

531:nobodyさん
08/11/29 17:17:28
JOINしたテーブルのカラムってSELECTで参照できないの?

532:nobodyさん
08/11/29 20:31:26
>>531
できなかったらあんまし意味なくね?


533:nobodyさん
08/11/30 05:18:39
>>532
例えば、決済トランに会員マスタをJOINしても、会員マスタのデータはSELECTできない。

534:nobodyさん
08/11/30 20:26:13
それはpropelの使い方が悪い

535:nobodyさん
08/12/01 15:40:34
1.2.0きました

536:nobodyさん
08/12/02 00:10:10
短い命だったな>1.1

URLリンク(code.google.com)
まぁ、1.1で学んだことが無駄にはならんとは思うが、また結構変わったな。

537:nobodyさん
08/12/02 05:23:30
なんとか1.1 -> 1.2を完了した。
やっぱりDBがPDOになった(propelが1.3になった)周りの変更がでかかったな。

538:nobodyさん
08/12/02 09:17:20
ドクトリンはどうよ

539:nobodyさん
08/12/02 09:46:52
>>537
kwsk。doSelectRSとか、あの辺?
select直投げとかも使ってるから、結構インパクトあるかも。
まぁ、最低でも三ヶ月は移行しないけどね。1.1.0も結構バグあったし。
しかしSymfonyは結構サイクル短いな。

540:nobodyさん
08/12/02 17:14:50
1.2の標準はドクトリンなんだろ?
プロペルなんて使ってる奴は昭和

541:nobodyさん
08/12/02 18:28:40
ドクトリンで
WHERE A AND ( B OR C )
みたいなカッコ表記するのってどうやるの?

542:nobodyさん
08/12/02 18:39:26
そのまま
$query->where('A AND ( B OR C )')

543:nobodyさん
08/12/02 20:45:23
>>540
ドクトリンは標準ではないんだよ。
どちらもOKといったかんじ。

544:nobodyさん
08/12/03 09:49:01
ドクトリン使うかなー
propelとかありえない。プロペラ付けて遙か彼方に飛んでいって欲しい。
で、パフォーマンスはどうなん?>ドク

545:nobodyさん
08/12/03 22:48:45
Doctrineとか駄目だわ。
Propel1.3のがパフォーマンス良いし、コードジェネレートで
IDEでの補完効いて楽。
ActiveRecordとか終りすぎ。

546:nobodyさん
08/12/04 02:16:41
生SQL最強でFA

547:nobodyさん
08/12/04 11:42:48
まぁマッパはどっちでも良いが、
プラグインの都合でドクだと少々困る人は困るかもな

548:nobodyさん
08/12/04 22:27:30
みんな1.2やり始めてるん?

関心関心

549:nobodyさん
08/12/04 23:56:25
1.1でやってるなら1.2にしたほうがいいわな
1.1からpropel1.3使ってたから移行楽だった

550:nobodyさん
08/12/05 16:50:24
sfFormで質問なんですが
sfValidatorAnd で複数のバリデーション実行する時って
1個でもエラーあったら次の処理終了とかできませんか?
あと、エラーメッセージを配列で取得したい時ってgetErrorSchemaで取得するしか方法ないのかな?

551:nobodyさん
08/12/14 09:23:29
いまだにfrontend_devまるだしサイト結構あるなw

552:nobodyさん
08/12/15 10:57:09
frontend backendって名前にすること自体ありえん

553:nobodyさん
08/12/17 18:05:07 MLlBkt3T
symfonyのadmin generator見たいに画面を自動で作っちゃうのを
スカフォなんとかとか言いませんでしたっけ?
sca〜こんな書き出しだったきもする。

どっかで見た気がするんだけど、思い出せない。
確か緑色の本で見たのかな。

気持ち悪いので知ってたら教えてください

554:nobodyさん
08/12/17 19:11:37
スカッフロード

555:553
08/12/17 19:30:21
>>554
ありがとうございます
さっぱりくっきりしました。

scaffold 足場、足場組み.
っていう意味みたいですね。

556:nobodyさん
08/12/17 19:42:48
どう見てもスカトロです
ありがとうございました

557:nobodyさん
08/12/17 19:52:23
frontend_dev丸出しサイトみるとAPC使ってるところないね
APCの使用率はどのくらい?

558:nobodyさん
08/12/19 04:01:04
>>557
2%

559:nobodyさん
08/12/19 04:06:53
そんな低くないだろ〜
10%くらいはあるんじゃね

560:nobodyさん
08/12/19 14:34:21
URLリンク(www.activeweb.jp)
ここいいな。fastcgiだし

561:nobodyさん
08/12/22 14:49:59
jobeetの話題がないな。
もうここに来る奴には用済みか?

symfony propel:data-loadで

Class '?JobeetJob' not found in /usr/share/pear/symfony/plugins/sfPropelPlugin/lib/addon/sfPropelData.class.php

ってでるわ。
一度だけ成功したんだけれど、最初からもう一度やってみようと思ったら、またでるようになった。
なんか抜けてるのかな?


562:nobodyさん
08/12/22 15:32:14
ちゃんとモデルビルドしてあんの?

563:561
08/12/22 15:54:53
>562
php symfony propel:build-modelですよね。
してます。

分からないので最初からもう一度やってみます。。。

564:nobodyさん
08/12/22 18:44:54
symfony ccは?

565:561
08/12/22 19:40:37
>>564
キャッシュクリアもやってます。

1.0以来久々だったので復習がてらやってるんですけど。
以前はあまり悩むことはなかったのですが。
日本語訳サイトと本家を行ったり来たりしてるから、何か間違ってるかも。
明日も休みだし、ゆっくりやるか。

566:nobodyさん
08/12/22 20:26:14 IJDiGLGO
>>561
バージョンはいくつですか?
私は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とかに変えるとうまくいきます。

567:561
08/12/23 04:55:42
>566
1.2.1です。
>561の自分のレスを見るとクラス名に「?」が入ってるな。。。
設定ファイルの改行コードがくさい気がしてきた…。
明日、再度頑張ってやってみよう。

568:nobodyさん
08/12/25 20:37:41
symfony1.2のpropelってPDO使えないサーバだと駄目?


569:nobodyさん
08/12/26 07:37:20
symfony1.2にはphp5.2以上が必要です。

570:nobodyさん
08/12/26 22:09:47
URLリンク(elliottback.com)
URLリンク(wiki.rubyonrails.org)
自鯖で運用する場合パフォーマンスからみても
RailsよりPHP+Symfonyを選択する理由はなし?

571:nobodyさん
08/12/27 01:43:38
外注さがすときはphpのほうが見つかりやすいけどな。
一人でシコシコやってるだけなら好きにすればいい。

572:nobodyさん
08/12/27 02:09:03
必ずしも優れているほうが普及するってわけでもない
phpがwebアプリケーションのシェアとっちゃったから、急激な逆転はないでしょ

573:nobodyさん
08/12/27 11:09:40
体感的な話で申し訳ないが、RailsはPHP+Cakeなどに比べるとかなり重い。
DBに接続しない、単純なページ表示するのにも、キャッシュが効いていない場合は
どうなってんだってくらいRailsは表示に時間がかかる。
じゃあキャッシュ効かせればいいじゃんって話なんだけど、
ちょっとした情報を取ってきて表示が変わるようなページに対しては、
毎回表示が遅くなる、という事に。
DBまわりは、自分はPropel等使ってないから単純な比較は出来ないな。
個人的には、パフォーマンスはPHP、書きやすさはRuby(Rails)な感じ。





574:570
08/12/27 22:14:46
手元で10000回ループして文字列連結を試したけど
どうひいき目に見てもPHPのが速かった・・・

575:nobodyさん
08/12/28 04:54:43
railsを速く動かすにはかなりノウハウがいるだろ

576:nobodyさん
08/12/31 12:16:02
>>570
5.1.6とかまた酷いもんを比較対照にしてるなwww

577:nobodyさん
09/01/04 23:00:05
php擁護が多い

578:nobodyさん
09/01/05 08:37:49
symfonyスレだもの

579:nobodyさん
09/01/06 21:35:42
>>577
むしろあの古い比較記事自体、酷いrails擁護だろ

580:nobodyさん
09/01/07 00:42:52
URLリンク(www.symfony-project.org)

日本人はやる気ないなぁ。
確かに落ち目っぽいし。

581:nobodyさん
09/01/07 00:59:06
自分で何もしないやつほど吼えるよね

582:nobodyさん
09/01/07 11:59:39 E9TXficj
>>580
エンジニアに英語は必須でしょ。勉強しようよ。
そういう言う俺は公文の中学生英文法を勉強してるへたれだけど。

583:nobodyさん
09/01/08 10:30:11 RWe/YoFS
actionでテーブル名からそのOMクラス名を取得するにはどうすればいいですか?

584:583
09/01/08 14:04:48 RWe/YoFS
admin generatorをカスタマイズしてたんですけど
actionでやらないで、generatorでやってしまいました。

actionだと
Propel::getDatabaseMap($connectionName);
でDatabaseMapを取得して、どうにかするのかな?
試してないけど。

585:nobodyさん
09/01/12 05:16:23
doctrine試してるんですけど
doctrine-build-all-reload
すると、データベースを一回ドロップして作りなそうじゃないですか?
その時、encodingの値を無視してDEFAULT CHARACTER SET latin1で作っちゃうんですけど
設定でどうにかなりますか?

doctrine-build-all-reloadを使わないとか、mysqlの設定をいじってデフォルト値を変えちゃえばどうにかなるとは思うのですが
symfony側でどうにかならないかなあ。

586:585
09/01/12 05:17:13 JXhDeiPx
ああ、専ブラがまたデフォルト下げ設定になってました。
すいません。

587:nobodyさん
09/01/17 00:20:55 LLHZVk4w
schema.ymlでフィールドの選択可能な値一覧を指定する事って出来ますか?
MySQLのENUM型みたいなの。

イメージとしてはこんな感じです。
propel:
customer:
id: ~
sex: [male, female]

588:nobodyさん
09/01/17 02:22:45

ORMで定義するんじゃないの?



589:587
09/01/18 05:03:02 cj4gRIwu
>>588
ちょっとよく分からなかったので、とりあえず保留・・・
別テーブル作ってmale, femaleの2つのレコードを作って対処しました。

別の質問なんですけど、generator.yml に password, password2 という
2つのフィールドを定義しています。

modules/user/validate/edit.yml というバリデータを用意して2つのフィールド
ともにrequiredにして、sfCompareValidatorで2つのパスワードが一致しているか
チェックしてます。

それ自体はとりあえず動作したのですが、やりたい事はユーザーの新規作成
の時はパスワード入力は必須にして、更新の場合は値の入力は任意で、
値を入力した場合のみ2つが一致するかチェックさせたいです。

ゴリゴリ書けば出来ると思いますが、一番楽な方法ってどんなんですか?

590:nobodyさん
09/01/18 11:39:22

シコシコ書くしかないね。



591:587
09/01/18 11:59:51
>>590
そっかー。残念ですがシコシコやります。
ありがとうございました。

592:nobodyさん
09/01/22 16:52:06
sfForm を誰か簡単に説明してください。
これでフォーム周りがよくなったの?

593:nobodyさん
09/01/22 22:02:55

悪くなった。

594:nobodyさん
09/01/23 23:49:18
>>592
うん

595:nobodyさん
09/01/24 21:08:57 BN/V3l3x
blogを作るチュートリアルをやってます。
postとcommentという2つのモジュールがあるやつです。

postのedit画面でcommentの一覧表示をさせてますが、
これと同じ事をadmin generator(? generator.yml を使うやつ)で
できませんかね。

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
全然違う


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

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