lt;?php symfonyとフランチョスのスレ ?gt;
なんで参照間違えたままなんだよw
でもともかく乙
参照って<、>の事? タイトル側って普通に記号の<で書けば良かったんじゃなかったけ?
>>4 そうだよ
いちいち実体参照で書かなくてもいいのに前スレ立てた奴が間違えたの
alphaになったら、config.phpの中身が変わったな・・・ winとlinuxで互換じゃなくなった。
>>9 $sf_symfony_lib_dir = realpath(dirname(__FILE__)."/../../lib");
$sf_symfony_data_dir = realpath(dirname(__FILE__)."/../../data");
PEARのsymfonyディレクトリを指してるんじゃない? それだと、winとlinuxにならないよ。
realpath(dirname(__FILE__) ← これってプロジェクトディレクトリの config/ でしょ? 儂のsymfonyディレクトリは C:\php\pear/symfony /usr/share/pear/symfony だよ。
そもそも環境が変っても動作するように記述するconfigファイルなのに、自動設定する考えが間違っている
0.6, 0.7は cache 消せば win linuxでそのままできるでしょ。
それじゃ問題があるから今の形に変ったんだろ 環境に適応できないなら、古いの使ってれば良いだけの話
>>13 symfonyのディレクトリ動かせばいいだけ
ではアルファはどこにあるのでしょうか。
また、また、alpha あ が っ た な 。 alpha: 0.92767
アルファ野郎の模倣犯だ。 本物はおれだ。
$ symfony plugin-list Installed plugins: symfony 0.9.2767-stable # pear.symfony-project.com sfSslRequirementPlugin 1.0.0-stable # pear.symfony-project.com だって。
25 :
nobodyさん :2006/11/20(月) 13:36:14 ID:uaP0Wqvj
>>25 こんな過疎板にそんな広告貼っても意味ないよ
schema.yml と schema.xml どちらの方がいいですか? 今、schema.yml 書いているけど、schema.xmlの方がやりやすい。
そうなんだ。 xmlだけの体験者としては、なんでここだけymlじゃないんだ?と疑問に思っていたんだが。
というか、ymlやめて そのままphpの配列でいいんじゃね? とか思う。
>>29 さすがにそれは醜すぎるから勘弁。
どっちにしてもschemaオートビルドしてるから関係ないけど。
いよいよクリスマス降臨説が濃厚になってきた
フォーラムにいったやつが詳細を知っている筈!
正直 alpha使ったほうが、得策だと思う。 stableはノーメンテだし。
たしかに今のstableは結構バギーだったな トリッキーな対処法で乗り切ったがそれ故アップデートも気軽にできない…orz
アップグレードしてみなよ。意外とすんなりできる。(まじで) テスト鯖たてて、下のコマンド実行ね。 $ symfony upgrade 1.0 (propel.iniがうまく設定されないので修正する必要あり。) この辺は他のフレームワークと比較してsymfonyの長所だと思う。
bodyのonloadイベントをセットしたい時はどうすればいいの?
自分でするしかないのか symfonyのわりに気が利かないな
こんなのJavascriptヘルパに含んでおこうぜ〜ザニノットよう
>Allow to break an application into several sub-application which >can communicate with each other. >(www.symfony-project.com/trac/wiki/Symfony1.0Release) これには非常に期待してる。1.0のリリースが待ち遠しい。
クリスマス光臨説は濃厚だわ。
ところで、FWを使い始めてから、効率はめちゃくちゃよくなったけど 一方で自分ではなんらクリエイティブなことをやらなくなった気もす るんだけど、みなさんはどうよ? できたことができなくなるような気がして不安だ・・・
うーん正直効率は実感してないな APIとか内部を調べながらほふく前進してる感じだ… 俺のばあい普通に作るより脳への負荷が高い。
かゆい所に手が届かないので、対処方法を考えるのに余計に時間がかかる罠
スジのいいプログラミングになるから 保守や拡張はしやすいと思う
まあFWはまだオナニーの域を出てないんだろうな。 本格的に使うならもっと成熟してからでもいいのかもしれない。 今の時期から使ってるのって、FW成長の実験に加担してるだけって感じがしなくもない。 自分の勉強のためと割り切れば、いいアドバンテージと言えそう。
俺が悩んでるのはモデルの書き方なんだよな 検索結果リストで、select * でなくJOINも多数発生する場合のモデルって /lib/model/omに Baseデータクラス・・・検索結果に必要なデータ構造 BaseデータクラスPeer・・・doSelectとdoCount /lib/model に継承したのを置いて、askeetのリファクタリング章の真似で本来のモデル?(ビジネスロジック)を書く というのがスマートでsymfonyのやり方な気がするんだけど・・・・ 今はデータクラスを自分で書くのが面倒なので、主テーブルのモデルにdoSelect改とdoCount改とビジネスロジックを書いている レベルの違う物が1つのファイルに入ってくるので気持ち悪い Baseの方にdoSelect改とdoCount改を放り込めばスッキリするんだが、テーブル修正した時にpropel-build-modelで消えてしまうのでやりたくないしな
俺はテーブル構造を propel で使いやすいように作ってます。
>>48 propel-build-model したときに Base に書き込むよう改変しちゃったら?
とにかく、プログラムを楽にしたいですね。
もう、SQL書くのめんどくさい。
でも、いままで 1SQL志向だったのがSQL発行されまくってなんか気持ち悪い・・・
0.63のバグってなんですか? 誰かおしえてくれ。
Propelの方がめんどい
symfony と propel は切っても切れないでしょ! 下手に変なもの使うと保守性が落ちる。
そうそう。長芋にはマカロニ
うはw酔っ払っておかしなことに。 長いものには巻かれろ、ね。
alphaを最新にアップグレードしたら、link_toで、最後の文字がpで終わるリンクの、pの文字が削られる… link_to('グループ','sfGuardGroup') って書いたら、"sfGuardGrou"で終わってた
56 :
nobodyさん :2006/11/24(金) 05:13:16 ID:q6hTMCvI
>>45 アトピーな人にはsymfonyは対応していません
pだけ削られるってどんなロジック?
前スレのmが削られる人と同じ理由でないの?
なんだそれw 削られてる人多すぎ
ベースのモデルを継承してメソッド作ったらこんなエラーが出ました。 BaseHogeはabstractになっているので大丈夫だと思うんですがナゼでしょうか。 Strict Standards: Declaration of Hoge::setPath() should be compatible with that of BaseHoge::setPath() in AAA.class.php
引数が違うのかな?
分かりました。 BaseHoge::setPath($v) に Hoge::setPath($v = array('-'))と してたのが問題だったようでした。
$User = $this->getContext()->getUser()->getSubscriber(); $UsersInfo = $User->getUserInfos(); $UsersInfo[0]->getId() ここの配列からメソッドを呼び出すのがいやだなぁ
なんで?オブジェクトの配列て普通じゃ?
$UsersInfo = $UsersInfo[0]; もれはこうやってる。
配列かどうかチェックするようなコードは粛清されるのが時代の流れだから仕方ない
そんなメソッドあったけ?と思ってsymfonyのAPIページ見たけど載ってない アルファで色々追加されてるっぽいね
('-')アレー
70 の知ったかぶりの件について。
知ったかぶり?なにが…? stableで見ないメソッドだからアルファで追加されたんだねって 普通の感想だと思うのだが…
>>72 は「知ったかぶり」という言葉を、「勘違い」という意味だと思ってるらしい
最新のαにアップしたらモジュールが作成出来なくなった。 1.0では直るよね、フランチョス
俺は普通にできてるけどね
俺もできてる。 設定がおかしいよ。
1.0(予想)まで1ヶ月きったな
symfonyインストールしなおしたけど、やっぱりモジュールだけ作れない、助けてフランチョス!!
だれかforumの内容が詳細にかかれてるblogしらないか? 海外でも良いぞ。
83 :
フランチョス :2006/11/26(日) 23:24:48 ID:???
>> 81 モジュール作ったときのコマンドを教えてくれ。
agavi module
普通に symfony init-module frontend modulename だよ、フランチョス
エラーが出ると思うけど それを教えてくれ
PS3上のLinuxで実行してるんじゃない?
OSはXP、エラーとかは出なくて modulenameActionsTest.php だけ生成されて止まる。 とりあえずPHPからインストールしなおしてみます。
skeltonちゃんとありますか? ここらへん見てみてください。 C:\php\PEAR\data\symfony\skeleton
skeletonはちゃんとあるみたいです。 PHP、Pearの両方インストールし直したけど駄目でした。 やっぱりバグじゃないのフランチョス!!
だからお前だけだって。
symfony propel-init-crud で試していただけませんか? それから、ちゃんとモデルを定義し指定していますか? Fabien
あー、Winでinit-moduleできないのはバグ?なのかな。 data/symfony/tasks/sfPakeGenerator.php:155 ここで、'/module/'ってなってるのを、'/module'にすれば直るよ。 devにメール投げたけど反応ないから、アカウント作ってチケット発行するかなぁ。
逆に考えるんだ 「Winで開発してる俺だせえ」 そう考えるんだ
>>96 ありがとうございます、バッチリ直りました。
やっぱりバグじゃないかフランチョス!ファビエンヌに言いつけてやる
バグあり前提のアルファで文句を言う奴はけしからんって先生が言ってた
バグなのにバグじゃないって言ってた奴らの方がけしからんと思うけど
先生に言いつけてやる
admin generator使うと、プライマリキーの列がhiddenになるんですけど。。 generator.yml でid:{ type: input_tag, name: ユーザID}とかやってもウンともスンともいわねえ フランチョス!!!!
胸に手を当てて考えてみろ。
オッパイ大好き
>>100 よく読み返してごらん。バグじゃないなんて言ってる人は居ないよ。
sfPropelParanoidBehaviorPlugin使ってるひといますか?
http://www.symfony-project.com/trac/wiki/sfPropelParanoidBehaviorPlugin ここのページどおりにやってるんだけど、SQLに変化がないんだよねぇ〜
だれか、できてる人いる?
それと
・Activate the behavior for one of your Propel model:
// lib/model/Article.php
class Article
{
}
sfPropelBehavior::add('Article', array('paranoid'));
これって、Articleクラスの外でsfPropelBehaviorを設定しろって事?
Announcing symfony 1.0 beta 1キター って書こうと思ったら既にw
今作り込みの最中みたいだし うまくクリスマスにリリースのタイミングあわせるなんてできないよな、 よく考えたら。
やっほーい。クリスマスがはやく来たぜー。
そろそろ本出さなきゃ
0.63から1.0への新機能はなんだ?
フュージョンだよ。
フュージョンってどういう機能なの?
mixinみたいなもん
askeetがbataで動くようにfabienがシコシコメンテしてるぞ。
>>108 突撃してThank youコメント書いといた。w
We love Francois,with calling "FURANCHOSU".
and We are Japanese HENTAI.
多分奴らはジャップ嫌いなんじゃないか? フォーラムでスルーされた奴を2人知ってる、2分の2でスルー
フラ公は日本好きが多いはずだが…。
ジャップをさげすむのはアメ公とかオージーみたいな歴史のない国の奴じゃね? 歴史を持つフラ公は日本を嫌う要素ないよ。 ジャップ関係なく痛い書き込みだったからスルーしたんだろ。
日本のアニメがすきなんだよ。
痛い書き込みといえば # symfony のコメント 2006/11/23 - 02:57:51 - あまりにもsymfony.jpの更新が酷いです。 中途半端で無責任です。 積極的に日本に紹介する気がないのであれば、辞めたほうがいいと思います。
その後 急に書き込みが増えたよな。 2006/11/23 - 02:57:51 - のコメントに敬意を払いたい。
そんなに褒めるなよw
2006/11/23 - 02:57:51 - は神!
自作?
責められることなのか?という気もするが… symfony.jpというドメインを取っておいて放置プレイだと 切れる奴も出てくるわな
慢性的人的リソース不足なんすよー。 ・・・という言い訳。 ごめんなさい。頑張るます。
うぉ!まじで月宮さんっすか?! blogみてて、精神的に結構キてんなぁ・・・・と勝手に心配してました。 頑張るのもほどほどに・・・。
GJ!!!!!1!!!1!
GJ。
138 :
nobodyさん :2006/12/02(土) 20:39:32 ID:2qYck0ej
>>135 good job!
いやぁ〜 symfony 最高ですな。
結構質が高いね。
その内、そこに俺の名前が載るぜ!
すみません。view の Components Component slots ってどんな違いがあるんですか。
>>141 あなたがあの有名な「カテゴリ: カテゴリ」さんですか
そうか?発表からベータ公開までの流れを考えれば随分早いと思うが。
パフォーマンス的に重いってことじゃないの?
>>147 そこはそんなドメイン取ってる割に全然情報がつかえん
>>147 素直に賞賛したい
が、optimaizerの所読むとかなり酔っ払ってるのか、アクセラレータの仕組み自体を理解してないのか?
まぁ、俺自ら調べた後で教えてやるとするか
>>147 RSSリーダに登録したぜぃ(・ω・)ノ
>>142 例えば、Yahooの上にあるロゴをコンポーネント化する
グローバルテンプレート上で、component_slotを利用して上部にロゴ表示
特定の画面(モジュール)では、Yahooロゴの場所にはYapooロゴを表示したいとする
view.ymlでコンポーネント設定を上書きして、Yapooロゴ表示コンポーネントに切り替える事ができる
補足 同じ事をcomponentでやりたいとすると view.ymlでグローバルテンプレートの切り替えを行う必要がある ヘッダとかメニューとかグローバルにコンポーネント配置する時に差が出る
fabienが狂ったように更新しすぎな件。
beta2が近いんだろうか・・・?
>>149 忘れてた><
つか、興味がどうしてもsymfonyの方に向いてしまい。
個人的に興味失せた物に対して時間や金ってコスト費やし続けるのは無理。
>>151 本人曰く、最近酒の量は減ってるらしいです。
>>147 更新してるだけで、内容はどうでもいいものばかり。
寒い書き込みした奴は自分のおかげだと調子こいてそうだけど。
いやいや俺は役に立ってるよ そんなにハイレベルならお前さんが情報発信したら? すぐsymfony界の天下取れるだろ。
ブログ書くのもサボるのもかまわんが、 本家のtracにアホみたいなチケット増やして、 fabienの手間増やすようなことはやめてほしい。
>>159 fabienの手間(笑
という159はsymfonyのインストールにも手間取りそうだとシャレてみる
>>159 frontend_devをそのまま公開しちゃう馬鹿だからしょうがないよ
ここで話題になってなかったら俺も晒してた可能性は大 気づきにくいだろあれは
>>162 普通気づく。
気づかない方がおかしいし、その程度の奴はやらない方がいい。
>>162 業界トップクラスの技術者が気づかないほどのものですか?
でもwikiに載せてたサイトの半分以上が実際晒してたしなぁ うっかりミスだからあんまりレベルは関係なくない?
おい Ajax actions have no layout by default. この件について詳しくおしえてれ。
167 :
nobodyさん :2006/12/08(金) 11:42:21 ID:nUVr57oC
XmlHttpリクエストの場合にはデフォルトでhas_layoutをオフにしてくれる。 ただし$request->isXmlHttpRequest()で判定してるから、prototype.js以外(X_REQUESTED_WITHヘッダーを送信しないライブラリとか)を使っていると駄目。
うそだ〜とおもったら ホントにsymfonyじゃねーか!! フッターに書いておる!
うれし・・・はずかしい・・・・です
Doctrineってどう? ドキュメント見てみたらPropelより直感的で良さそうなんだけど
すみません。Ajaxについて教えてください。 input_in_place_editor_tagを使う場合,form_remote_tagで囲う必要がありますか? また、input_in_place_editor_tagでサブミット時,一緒にhiddenフィールドの値も 取得したいと思うのですが、input_in_place_editor_tagのvalueの値しか取得 できません。 どうしたら、取得できますでしょうか。
symfony に乗り換えました。 今後とも宜しくお願いします。
beta2くるか?
>>173 どこから、どういう理由で乗り換えたか聞きたい。
まー、気になるもんだけどね。でも、ぶしつけな質問は辞めた方がいい。
Postgresqlのインサートができないのにびっくりした。 対処法はググって速攻で見つかったけど、 そんなに世の中みんなmysqlですか。
ライセンス的なことで機転が利くのは彼(mYSql)
>>178 postgresql使ってるけどインサート出来ないってどういうこと?
>>179 mysql の方がライセンス的に面倒くさくなかったけ?
Doctrineハヤス、Propelイラネ
おい!まじか? 詳しく述べろ!
183 :
nobodyさん :2006/12/19(火) 03:04:22 ID:8K7ZSXly
Doctrineのどこが速いんだよw テーブルが増えるほどどんどんもっさりしていくあのヘボさは、 いかにも学生が暇つぶしに作りましたって感じのものだな
>>184 たしかに、でかいテーブルだと、とたんにもっさりするな。
20x100行をそのまま表示させるのに、Propelよりもぜんぜん遅かった。
ちなみに、propel-build-modelで作成されたモデルの中の
include, require文はsymfonyのAutoloadがあるので、削除するのがおすすめ。
レコードが増えるとか... テーブルじゃなくて。
beta: 1.0.0beta2 きたーーーーーーーーーーーーーーーーーーーーーーーーー!!
* r3077: better error messages when initializing sfContext object * r3059: added a new sfSimpleYamlConfigHandler class for simple configuration file needs * r3047: removed exception when sfFillInFilter does not find the form * better date support (admin generator, helpers, i18n, calendar files, i18n files) * r2995: all Creole and Propel files are now under addon/ * r2985: added all licenses in one place * r2984: removed PEAR dependence * r2980: added throwsException() method to the test browser * r2974-r2978: PHP 5.0.X compatibility * r2970: fixed permission problem when installing a plugin * r2957: fixed directory order for configuration files * r2950: ability to test internal modules * r2944: fixed action variable settings with __set() * r2936: added support for HTML and XML in sfFillIn class * r2928: more configurability for sfLoader class * r2917: added comments to the default settings.yml configuration file * r2903,r2966: slightly more powerful autoloading system for the symfony CLI * r2883: added a new setHeaderOnly() method to sfWebResponse * r2880: fixed autoloading for plugins * r2879: fixed glob() problem with PHP < 5.1 * r2875: added simple autoloader to ease unit tests (for model classes for example) * updated script.aculo.us (1.7.0_beta2) and prototype (1.5.0_rc2)
symfonyつかってりゃ mixiも画像直呼びのバグも治るだろうに・・・とか考えたりするんだが。 つうか、security.yml 楽すぎ。
actionかますのかい?
192 :
189 :2006/12/20(水) 23:09:57 ID:???
symfonyにしようか、zendにしようか迷ってるんだけどさ、どっちが将来的に長続きすると思う?
ここで聞いてるならsymfonyという答えしかないだろう
>194 だわなぁ〜 symfonyのここが凄いww って所を教えてくれんかの〜? Easy Ajaxって所は、いいかもと思った
sfFillInForm.class.phpの $value = call_user_func($callable, $value); 1番目の引数をarrayにしてくれんかのぅ〜
キンモー
>>195 しかし俺はzfを推す
最近バージョンアップも校長だし
symfonyからZF使うのが普通だろ?
ZF骨組みだけじゃん
日本人ならEthna使え でもMapleは・・・・・(以下略
いま symfony updateしたら symfony version 1.0.0-beta3 になってる!!
0.6.3 からバージョンアップできませんが何か?
betaだしな。
いや、 symfony update が機能的に実装されて無いらしい >0.6.3
ここ最近のbetaの進み方から行くと 本当にクリスマスに1.0降誕させそうだ
beta → rc1でしょ?
merry Xmas,jap! fabien
来年までお預けっぽいね
おまいらはzend_flameworkのライブラリどこにしまってんの? もれは/projectDIR/lib/zend なんだけど、ZFって重いよねバックアップする際にじゃま。
おれもそんな感じのディレクトリにしまってるよ。 バックアップするときZFだけ除けばいいんじゃね?
ZFを何に使ってるの?
人妻調査
>>213 PEARのディレクトリにZend.php/Zendへのsymlink
multiple-references foreign keysについて教えてください。
http://www.symfony-project.com/book/trunk/model このページのForeign keyの項目に
????????references:
??????????-?{?local:?user_id,?foreign:?id?}
??????????-?{?local:?post_id,?foreign:?id?}
と指定されていますが、
このとおりに行ったら、
ERROR 1060 (42S21) at line 74: Duplicate column name 'id'とエラーに
なってしまいました。
別の指定方法があるのでしょうか。
symfonyでググったらsymfony.jpがトップに出てくるんだが これって全世界的にそうなのかな? ググる時はsymfony-project.comに出てきて欲しいんだけど。 symfony.jp少し遠慮しる。
google.comだと違うのか ってか関連検索「2ch symfony」って何
222 :
nobodyさん :2006/12/29(金) 17:24:51 ID:??? BE:89760029-2BP(1010)
>>221 2chのスレが一番話題にしてるからじゃねw
誰かがあっちのコメントに2chの名で何か書いたから 日本以外の連中が何か知らなくてググったんだろう
んなこといったら cakephp mod_rewrite 404とかだって何?って感じジャン
We would like to wish you a very happy New Year 2007. With the upcoming of symfony 1.0 very soon, this will be a great year for the framework, and we hope that the current symfony community will continue to increase. upcoming of symfony 1.0 very soon だって!!
1月から2月中の間に symfony 101 と developer tools も1.0.0用に置き換わると言うのもニュースだね。 同内容の本がでるらしいし。 akeet! はかわんないのかな。
それはそれだ。 それとも、ホントはクリスマスに欲しかったネとでも言っておけばよいのかwww
230 :
ポン太 :2007/01/04(木) 16:10:40 ID:f9RGTlv/
CGIのプログラムで全く別の人のサイトにランダムにアクセスさせることは出来るのでしょうか?javaスプリプトなら出来るのでしょうが、携帯サイトでそれをやりたいので・・どなたかCGIに詳しい方、教えてください。
恥ずかしながら、WinXPで動かすことができません。エロ委人ボスケテ symfony本体はpearコマンドでインスコできたんですが、 その後、アドベントカレンダー通りにやろうとして、プロジェクトのセットアップができない。 プロジェクトのディレクトリに移動したら、symfonyコマンドが 「内部コマンドまたは外部コマンド 操作可能なプログラムまたはバッチファイルとして認識されていません」 で実行できず、 symfonyコマンドをフルパスで指定しても、php.exeが〜ってエラー出て実行不可。 やむなくsandboxを拾ってきて入れたんですが、 propel-generate-crudとか、またもや実行できず、もうだめっぽです。 おいらのコマンドプロンプトの使い方が間違ってるのか、 symfonyの問題なのか、教えてくだちい。
ちゃんと php pear にパスを通しているかい?
>>232 すんません、意味が分からないので、おそらく通してないと思われますorz
ちょっくらググッてきまーーーーっっしゅ!
ググッてきました。パス通ってるみたいです。 php.iniに include_path=".;C:\php\pear;c:/php/includes;c:/php/pear" でいいんですよね? PHPベタ書きでPEARは使えてます。
ちがう。 cmdで php symfonyって実行するとどうなってる? c:\php\php.exe symfonyでは?
>>235 php symfonyを実行すると・・
「'php'は内部コマンド〜認識されてません」と出ます。
c:\php\php.exe symfonyを実行すると・・
「Could not open input file: symfony」と出ます。
どっちもダメくさいです。
念のため、Winのシステムで環境変数のPATHも、
「c:\php\pear」とか追加してみましたが、ダメですた。
まず。 全部フルパスで指定してみてください。 c:\php\php.exe "c:\???????????\symfony"
>>236 手元にWin環境がないので勘だけどシステムの環境変数のPATHに
symfony.bat(?)のはいってるフォルダーを指定してみ。たぶん
c:\php
とかそんなかんじ。(symfony.phpじゃないよ。)
正月早々お手数おかけしてすみません。
>>237 どうやっても「Could not open input file: 」と出ます。orz
>>238 symfonyとかPEARとかPHPとか、
怪しいフォルダーは全部指定してみますたがダメポです。orz
おかしいなぁ Could not open input file: ってことは引数のsymfonyが見つからないから path関連のトラブルだね。 まず、 php.exeとsymfony,symfony.batはどこのフォルダにありますか? C:\php\にすべて入っているなら下記で大丈夫だと思うけど。 C:\php\php.exe C:\php\symfony
すんません!!!再起動したら、できマスタ!! Dドライブからでも「symfony -V」だけでバージョン情報がちゃんと出てきます!! 原因は、やっぱ環境変数のPATH設定だったと思います。 で、変更したら再起動しないと反映されねーぞゴラと。 マジで皆さんありがとうございました。 お年玉あげるね つD
いらんがな(´・ω・`)
I will release a beta3 today which will be the last beta before RC1. fabien
bata3でたな。
fabienの会社が人募集してるな ちょっとパリ行ってくる
247 :
nobodyさん :2007/01/16(火) 18:40:07 ID:YM7hiIE4
beta4あげ
If everything works fine, we will release 1.0.0-RC1 at the end of this week!!
beta4になったおかげで、phpideでの補完がより効くようになったな
250 :
nobodyさん :2007/01/18(木) 23:45:42 ID:ljZhhcgw
厨房っぽい発言だがきいてくれ。 RailsのすごさにビビってRails覚えたんだけど、結局のところ Rubyが知られてない+連鯖で使えない、ってことで仕事で生かす機会が 無くて「スクリプト系言語のフルスタックのフレームワーク環境は仕事で使う のは難しいか」と思っていたのですが、Symfony使ってみてPHPという環境で ここまでできるのかと、Rails以来の感動を思えた自分がいます。 上記のようなぬるい理由で、Railsから乗り換えたって方はこのスレではいらっしゃいますか?
252 :
nobodyさん :2007/01/19(金) 00:58:25 ID:W21Icqma
みんなレンタルサーバとかいうけど、 レンタルサーバ使う仕事ってどのくらいの規模の仕事なの?
たしかに レンサバ規模ならフレームワーク使わなくても ちゃちゃっと済ませればいいんじゃないかと思う
レンタル鯖規模だろうが無かろうが、 symfonyのがちゃちゃっと済ませられるけどな。 そもそも、レンサバ規模「からはじめる」ことができるということが大事。 末端のプログラマならそんなこと考えないんだろうけどね。
>>251 これからRuby on Railsを勉強する予定です><
symfonyを勉強するのはまだ当分先になりそうです(^^;
レンタル(共用)だとsshでいじれないのがでかい symfony ccできないじゃん
258 :
nobodyさん :2007/01/20(土) 22:14:56 ID:/om+r2TV
symfonyをレン鯖で動かす場合って sandboxをポコって置けばいいのかな?
259 :
nobodyさん :2007/01/20(土) 23:24:21 ID:XDwN+LUU
symfony はサンドボックスでよくない? いままでPEARでインストールして使ってたけど、 なんか面倒くさいだけだった気がする・・・
レン鯖系の話題が出てきたので質問させて頂きます。 symfonyってApacheのmod_rewriteなしで動くのでしょうか? 動く場合にsymfonyの設定ってどうするのでしょうか? ご存じの方がいらっしゃいましたらご教授お願い致します m( __ __ )m
できますよ。
executionFilterがActionを駆動してるよ preフィルタ→executionFilterでAction実行→postフィルタ って感じでチェーン構造のフィルタが一本の大きな流れになってる
ありがとうございます。 HogeAction -> forward -> FugaAction って流れの時は、 preFilter1 preFilter2 executionFilter ┗HogeAction#preExecute ┗HogeAction#execute ┗HogeAction#postExecute postFilter1 postFilter2 forward preFilter1 preFilter2 executionFilter ┗FugaAction#preExecute ┗FugaAction#execute ┗FugaAction#postExecute postFilter1 postFilter2 View#execute みたいな感じでしょうか? (あ、すいません、1ファイル1アクションの時です)
266 :
261 :2007/01/21(日) 23:16:51 ID:???
>262
レス感謝w
で、調べてみた、、、というか、本家のaskeetにちゃんと書いてあったよ orz
ttp://www.symfony-project.com/askeet/ja/1 抜粋
注意: symfonyは、URLの/index.php/部分を取り除くのに mod_rewriteモジュールを使用することができます。
もし、あなたがそれを使用したくないか、またはあなたのウェブサーバが同等な設備を持っていないなら、
あなたは web/ディレクトリに位置する .htaccessファイルを取り除いてください。
index.php/を消すために使っていたのですね。それさえ気にしなければ、mod_rewriteはいらない、と。
そうなると、レン鯖での制限ってあんまり無いのですね。
お騒がせ致しました m( __ __ )m
symfony重たいなー。 1.0betaでちょっと改善されてるけど、今後も改善される予定? というか、アクセラレータ環境が当たり前?
268 :
267 :2007/01/22(月) 23:52:27 ID:???
と、書いてからXCache入れてみて気づいた。 symfonyのフロントコントローラよりも、Creole、ひいてはPropelが遅いみたいだね。 これは仕方ないのかな。
fillinが効かないんですけど、 apps\frontend\config\fiters.ymlに myFillInFormFilter: class: sfFillInFormFilter をいれてもできません。 なぜでしょうか。
見てきた。1.3はPDOも使えるのか。 早くsymfonyにのっかるぐらい開発進まんかな。
WHERE句でCriteria::CUSTOMを使うにはどうしたら良いんでしょうか? 素直にSQL直接書くしかないんでしょうか?
おまいらsymfonyどのバージョンで走らせてますか?
あ、PHP5のバージョンね。
5.1.6と5.2.0
フランチョスにMarkdown versionのaskeetを下さいとお願い中。
5.2.0て問題なく使える? メモリリークするらしいじゃん
symfonyで開発するときDBの定義とかどうしてる? schema.ymlを中心に考えて、 schema.yml編集 → propel-build-sql → mysql -u hoge hoge -p < data/sql/lib.model.schema.sql みたいにするか、 DBを中心に考えて dbを手でalter → propel-build-schema みたいにするか、どっちがいいのかな?
>>106 propel.builder.AddBehaviors = true
↑これ、
propel.builder.addBehaviors = true
だから。wikiが間違ってる。
一応 delete すると、deleted_at に時間が入るようにはなったけど
一覧表示とかには出ちゃう。
あと、 symfony propel-init-crud したとき、
deleted_at が登録フォームに出ちゃってる。
これは必須にしてしまったからかも。
symfony propel-generate-crud すると, [sfConfigurationException] Propel behavior "paranoid" is not registered とか言われてエラーになる. symfony propel-init-crud だとOK. propel-init-crud と propel-generate-crud の違いがよく分かりません.
これもう発売されたん?_
The Definitive Guide to symfony 買ったぜ〜〜〜〜〜
sfMailをつかって、どこかのアクションで書き出したCSVの添付を行いたい 場合はどうすればいいでしょうか。
287 :
nobodyさん :2007/01/30(火) 12:38:51 ID:gFabZzDM
>>284 わしも買ったぜ。
航空便なので、まだ届いていないけど。
シンフォニー使ってる奴はsymfonianというのか
ほんと?
fabienってすげーな、 いまじゃ本の執筆にもsubversion使うのか!
The Definitive Guide to symfonyって経験者を対象にした英語本やろ 未経験者を対象にした日本語本を出してくれんかのぅ
出たとしてもどの程度売れるかな? 毛色の変わった本を出してる9ten社なら出すかも
もれは一回、アンインストールしてからやったよ。
296 :
294 :2007/01/31(水) 23:51:10 ID:???
>>295 ありがとう。アンインストールしてやってもみたんだけど、やっぱりダメだった。
同じエラーが出て止まっちゃうね。環境依存なのかな。
さっきのTRACのチケットが出てまだ2時間だから、動きがあるかは
また明日にでも見てみようかと思います。
環境はなんですか? linuxですか?
つい昨日Symfony+PostgreSQLで使い始めたんだけど、 Symfonyってtext型とかでDB構築できないの? DB依存な型排除だとしたらとても悲しい。。(´Д`) [Exception in XML parsing] exception 'EngineException' with message 'Error setting up column 'isumcode': Cannot map unknown Propel type 'TEXT' to native database type.' in /usr/share/pear/symfony/vendor/propel-generator/classes/propel/engine/database/model/Column.php:190
longvarchar でいけない?
>>299 サンクス!それなら行けた!
無知ですまんこorz
301 :
294 :2007/02/01(木) 14:52:51 ID:???
今月中には確実に1.0降臨するな
The Definitive Guide to symfony 一通り目を通したけど、 いまいち。 もうちょっと突っ込んでほしかったわぁ
rc2が、stableってのも凄いよね。
>>304 和訳or追記で出版お願いします。><
(ここで日本語の本が出たらZend Frameworkに大きく差を付けることができるだろう)
内容として、たいしたことはない。 oreillyより読みやすい。
だれか0.6.3のsandboxくれ。
アプリケーションの起動時に1度だけ実行したいロジックは apps/***/config/config.phpに書けば良いの?
PHPにアプリケーションの起動の概念はないと思う。 なので、PHPではコネクションプールなどが出来ないです。 PHPのアプリケーションサーバとかあればそういうのが出来るのかも知れないけど。 一回しか実行しないのであれば batch/ 以下にバッチファイルを作って手動で実行とか、 毎回実行するなら、filters.ymlに設定すればいいと思う。
アプリケーション毎に値を設定できるけど(app.yml) プロジェクト全体の値ってどうやるの?
簡単な見積書とかの明細(行数が可変)の編集画面みたいなもののサンプルないかな。。
313 :
309 :2007/02/05(月) 23:08:04 ID:???
>>310 リクエスト毎に1度だけ実行する処理を指定したかったんで、
filters.ymlが希望通りだった。
ありがとう。
>>310 >なので、PHPではコネクションプールなどが出来ないです。
>PHPのアプリケーションサーバとかあればそういうのが出来るのかも知れないけど。
とりあえず君が無知なのはよく分かった
いやPHP単体ではコネクションプールできないじゃん なにが間違ってるの?
pgpoolでコネクションプーリング可能だから〜とか したり顔で言い出す予感
やっぱりpgpoolのことだったのか?
だれがコネクションプールだって言ったの? アプリケーションサーバの有無に対して突っ込んだとは微塵も思ってないんだね
>>315 >いやPHP単体ではコネクションプールできないじゃん
何単体とか言い直してるの?w
>>316 >pgpoolでコネクションプーリング可能だから〜とか
無知の実証お疲れ様。
せめてSQLBくらいで言えばよかったのにね
アプリケーションサーバなんて 定義が相当あいまいな言葉なんだから それをあげつらってとやかく言う方がセンスねーだろ… 常識で考えて
>>321 誰がって
>>310 がそう言って
>>314 がそれを否定したんだろ?
書いてないことが都合悪ければ「そうは書いてない」
都合良ければ「普通そういう意味だと考えるだろ」
普通に書けば言葉足らず
正確に書けば「〜〜まで読んだ」
ほんと2chでマトモな議論なんて出来やしねーなw
その言葉足らずがどっかの会社でプログラム作ってると思うと怖くて外注できねーw
ビューでDBの値によって表示を変えたいとき、 その判断のロジックの部分は、コントローラ側に書くべき?それともビューに書くべき? いろんなビューで同じロジック使う場合はヘルパーとかにしたほうがいいのかね。。
どこに何を配置すべきかってほんとに悩みますよね。。
>>327 来週までにログイン付きの携帯サイトを作らなくてはいけなくなり、
ちょうど気になってたからsymfonyでやってみようと思ったんですけど
初心者には難しいですねぇ;;
サイトのTOPとかコンテンツのような動的ではないページって
どこに配置するのがsymfonyらしいんでしょうか?
1ページを1モジュールにすればいいのか
1モジュールの中にまとめて置いておこうか・・・
意味不明ですかねw そろそろ帰ろうλ....
329 :
328 :2007/02/08(木) 21:19:52 ID:???
日本語ドキュメント読めなくて途方にくれてたら いつの間にか復活してたので自己解決しにいってきますノシ
1アクション 1ページでしょ!?
なんか、"The Definitive Guide to symfony"よりも サイトのほうが詳しいよな・・・・
Definitiveって 語感的に「保守的」とかそんな感じじゃない? だから当たり障りのないことしか書いてないんだよきっと。
PEARからsymfonyをいれたのですが、新しいプロジェクトを作ったときに プロジェクト名/cache/アプリ名/dev/config/config_php.yml.php の中の3つの警告文の「current value is "'1'" - php.ini・・・」でエラーになります。 「current value is "\'1\'" - php.ini・・・」のように手書きでエスケープ してやればOKなのですが、キャッシュがクリアされる度に元に戻ってエラーになります。 magic_quotes_sybase のせいかと思ってOn/Off切替えてみましたが同じでした。 php.ini / apacheのconf は説明書通りに設定して mod_rewrite も入っています。 サンプルの sf_sandbox 持ってきて設置してみましたが、同じ状態です。 【環境】 OS: Ubuntu6.10 (kernel 2.6.17-10-generic) PEAR: 1.4.9 PHP: 5.1.6 Zend Engine: 2.1.0 Apache: 2.0.55 これはどうしたら回避できるでしょうか? お願いします。
334 :
333 :2007/02/09(金) 05:17:07 ID:???
書き忘れました。 バージョンは symfony version 1.0.0-rc2 です。
「current value is "\'1\'" - php.ini・・・」このエラーを全部教えて。
>335 エラーはこんな感じで、単に構文エラー起こしてるだけです。 Parse error: syntax error, unexpected T_LNUMBER in /home/hogehoge/www/symfony/ testproj/cache/testapp/dev/config/config_php.yml.php on line 9 なので、とりあえず問題の部分を手書きでエスケープして、 デバッグモードでキャッシュを生成しなくすれば、なんとか一応動くようです。 (symfonyを初めて使うので、これが正しい動作なのか不明) apache用の php.ini とコマンドライン用の php.ini が分かれているので コマンドライン用だけ magic_quotes系をOnにしたりして試してみましたが、 何でもかんでも \ でエスケープされちゃってエラー吐きまくりでダメでした・・・
>335 読み直したら、ちょっと誤解を招く書き方してたようです。 「current value is "'1'" - php.ini・・・」←これはエラーメッセージではなく、 構文エラーの原因部分(config_php.yml.php on line 9)です。 '{sfPhpConfigHandler} php.ini "magic_quotes_gpc" key is better set to "false" (current value is "'0'" - php.ini location: "/etc/php5/apache2/php.ini")' ↑この’’のせいでエラーが起きてる 現在は magic_quotes_gpc / register_globals は Off にしてます。
よくわからないけど、magic_quotes_gpc Off に設定しててもエラーがおこるってこと?
>338
Off/Onどちらとも試しました。Onにすると最初のConfig生成で
$sf_symfony_lib_dir = \'/usr/share/php/symfony\';
みたいになって構文エラーで動きませんでした。
Offにすると>337の状態です。
手修正して↓の掲示板サンプルを試してみましたが
ttp://codezine.jp/a/article/aid/837.aspx?p=1 ↑の2ページ目の「CRUD機能の自動生成:scaffolding機能」
の部分で自動生成に失敗して動作しませんでした。
今思うと最初のCongratulations!の画面自体が、
文字は出てましたが、背景が真っ白なんです。
Blogなどのインストールガイドを見ると、茶色の背景ですが
そこからして違ってました(たぶんcssや画像の生成で転んでる)。
あと気になったのが、自動生成された全てのPHPで
「<?php」の開始タグはあれど、「?>」の閉じタグが無いです。
こういう物かと思ってましたが、なんか違うんじゃないかと思い出しました・・・
Debian系といえど1CDリナックスのUbuntuなので、
PEARの動きが変でsymfonyインストールに失敗しているのかもしれません。
Windows版にした方がいいのでしょうか?
ぴゅう太 版にしれ。
341 :
339 :2007/02/09(金) 20:59:39 ID:???
>339です。 symfonyのインストール自体に失敗していたと仮定して、 一端PEARスレに移動します。 ありがとうございました。
>>339 >(たぶんcssや画像の生成で転んでる)。
alias はった?
> ?>」の閉じタグが無いです。
なくて正常です。不要だからないんです。
>Windows版にした方がいいのでしょうか?
Windowsで開発するのは小学生まで。
>342 ありがとうございます。 画像の件は指摘いただいたとおり Aliasを張る位置がずれていました。 直りました。 PEARで気になったのは、PEARインストーラーのOS判定で (/usr/share/php/OS/Guess.php) 「features.h」の存在チェックをしていないので 「/tmp/glibctestkcmm5K:1:22: error: features.h: No such file or directory」 というエラーがsymfonyインストール時に出たことです。 (glibc2.2入れても変わらなかった) あとは昨日と同じ状況です。 WindowsでPHP入れてDBの作業はあまりやりたくないので できればLinux環境でうまく動いてくれればいいんですが・・・
>>337 そういうエラー見た事無いから、不具合のあるsymfonyつかまされちゃった感じなんでないかなぁ?
削除できるなら一旦削除してから最新版入れてみたら?
ダメだとしたら、sfPhpConfigHandlerのexecuteの部分
$warning = sprintf('{sfPhpConfigHandler} php.ini "%s" key is better set to "%s" (current value is "%s" - %s)', $key, var_export($value, true), var_export(ini_get($key), true), $this->get_ini_path());
$data[] = sprintf("if (ini_get('%s') != %s)\n{\n sfLogger::getInstance()->warning('%s');\n}\n", $key, var_export($value, true), str_replace("'", "\\'", $warning));
↑の、str_replace("'", "\\'", $warning)が無いせいだと思うから、手動で変更してみるとかするしかないんじゃないかな?
(でも、うちのbeta4だと異常無いから、アップデートで治る・・・はずだと思う。)
schema.ymlの_foreignKeys って _foreign_keysが正しいよな。 あと、foreignTable → foreign_table も。 マニュアルおかしい。
>>344 ありがとうございます。
まだ試してないですが、
>>344 さんの方法でいけると思います。
というのも、
昨日カーネル更新したらOS自体が物故割れたので・・・(TДT)
すみません。symfonyのRewriteについて教えてください。 .htmlがついていたら、.htmlを取り除くって設定ですか? # we skip all files with .something RewriteCond %{REQUEST_URI} \..+$ RewriteCond %{REQUEST_URI} !\.html$ RewriteRule .* - [L] # we check if the .html version is here (caching) RewriteRule ^$ index.html [QSA] RewriteRule ^([^.]+)$ $1.html [QSA] RewriteCond %{REQUEST_FILENAME} !-f # no, so we redirect to our front web controller RewriteRule ^(.*)$ index.php [QSA,L]
秘密だって書いてあんだろうがよぉぉぉ!!!!
しょこたん? このスレ見てたのか ゴメンね…
>>347 .htmlが取り除かれるようには見えんが。
コメント付いてるじゃん。
1:.html以外の拡張子は何もしない。
2:.htmlも存在するなら何もしない。
3:それ以外はindex.phpに渡すように書き換え。
symfonyに限った話じゃないので、mod_rewriteのページで調べられるよ。
>344 バッチリ直りました! ありがとうございます。
すみません。 キャッシュ消してページにアクセスすると Notice: Undefined index: in C:\php\PEAR\symfony\util\Spyc.class.php on line 203 ってエラーが出ます。 何ですかこれ。
>>353 キャッシュを消す前に修正したymlファイルに
余計なタブか全角かなんか入ってるのでは?
タブは入っていなかったです。 2回目のアクセスから消えるのでいいのですが、気になります。
356 :
nobodyさん :2007/02/13(火) 18:55:35 ID:GvUKv70m
構造が同じ複数DBをsymfonyで扱いたいのだけど、 構造が同じにも関わらずDB毎にschema.ymlやモデルクラスを用意するのはおかしいので、 同じschema.ymlとモデルクラスでアクセス先DBを可変にしたい。 参考文書やHACKした事あるよ、等情報もらえると助かる。
"The Definitive Guide to symfony"に書いてある。
358 :
nobodyさん :2007/02/13(火) 20:24:43 ID:GvUKv70m
書籍しかも英語かorz 簡単な事ならそこまでしたくないのだけど 大変なHACKになったりする?
359 :
356 :2007/02/13(火) 21:32:46 ID:GvUKv70m
要するに定数ファイルからDSNを読み取るのではなくて 実行時に動的に決定したDSNが使いたい、という事なのだけど DSNなんていうDBMS臭を漂わせたものが果たして表層部にあるのかどうか。
> 356
databases.ymlに複数の接続情報を書き、
$conn1 = Propel::getConnection("conn1");
$conn2 = Propel::getConnection("conn2");
こんな感じで各DBに接続してるハンドラを取得出来るところまではわかるかな?
参考:
ttp://sakoda.office-lens.net/?p=28 後はそれを、
$c = new Criteria();
****Peer::doSelect($c, $conn1);
とかして、****Peerクラスの第二引数にハンドラを渡してあげればモデルを作らなくていいような気がする。
361 :
356 :2007/02/13(火) 21:48:05 ID:GvUKv70m
>>360 レスありがとう。
でもそれだとDBが増えるたびにdatabases.ymlに記述しなきゃいけない。
DB数が増えればdatabases.ymlのサイズがまずい事になる。
イメージとしては、databases.ymlからDSN情報を読み取っている部分に割り込みたい。
これが出来れば、URL引数等を見て動的にアクセス先DBを決定する事が出来る。
(FW無しのシステムでは同様のものを組んだ経験がある)
sfPropelDatabase.class.phpを拡張したものを myPropelDatabase.class.phpとでもするのでokでは? databases.ymlのサイズがまずいことってのがよくわからんけど.. URLで動的に設定を変えるならそのためのフィルター作るかな.自分なら.
最近はORM使わずに配列にしてるわ。
364 :
360 :2007/02/13(火) 23:23:03 ID:???
>>356 ふむふむ。
DSNの文字列は定義出来る状態ではなく、そのものズバリを動的に生成する必要があるわけだね。
そしたら、
****Peer::doSelect(new Criteria(), Creole::getConnection("mysql://hoge@localhost/hogehoge"));
こんな感じでどうかな?
URLからDSN文字列を自動生成させるなら、
>>362 さんも言ってる通り、Filter使って動的に生成してそれを使い回せばOKじゃないかな。
>>364 そんな方法もあったんですね。元の質問者じゃないけど参考になります。
>>362 以前、フィルタを使う方法使ってたけどなんとなく気持ち悪かったので、
今では autoload.yml の Propel の部分を上書きしてオリジナルの sfPropelAutoload.php を走らせる方法を使ってたりします。
参考までに。
367 :
nobodyさん :2007/02/15(木) 21:07:34 ID:CtXa1NT7
開発してて思うけど、windowsのアパッチの方が遅いな。 やっぱり、鯖はlinuxだわ。
$symfony propel-load-data frontend で下記のエラーがでます。 既存のデータが残ったまま行うとエラーになる様で、 新しいテーブルへのデータ挿入は可能です。 何か方法がありますでしょうか。 Unable to perform DELETE ALL operation. [wrapped: Could not execute update [Na tive Error: Cannot delete or update a parent row: a foreign key constraint fails
symfony の自動生成するスクリプト(propel-build-crud でできるファイル) の初期状態を変えたいのですが、 スケルトンのようなファイルはどこにあるのでしょうか?
>>369 制約違反だから、データ削除の順番に注意が必要
/fixtures/000_table1.yml
/fixtures/100_table2.yml
/fixtures/200_table3.yml
のように違反が起こらない(削除ができる順序)でテーブル毎に作成すればOK
>>370 $sf_symfony_data_dir/data/symfony/generator/sfPropelCrud/default/skeleton/かな
rubyとかでもそうだけど、sfMixerって保守性かなり悪くしそうじゃね?
キ…(-_-)キ(_- )キ!(- )キッ!( )キタ(. ゚)キタ!( ゚∀)キタ!!( ゚∀゚ )キタ━━━!!!
何度やってもsymfonyのpear upgradeに失敗するわけだが。。 DL失敗してるっぽいからアクセス殺到中なのかね?
uninstallしてからinstallしなおしたら入ったわぁ PEARのupgradeの意味あるんかいな。。
>>375-376 PEARのバージョンは?
あと、自分も一時期よく失敗してたけどRC1あたりから失敗することが無くなった気がする。
>>377 PEAR 1.4.9でupgrade失敗、
バージョンが悪いのかと仕方なく1.5にするもupgrade失敗
だったお
>>378 システムディレクトリに残ってるゴミは消したか?
pear.iniだとかそのへん。
まぁ俺はPEAR使ってないから関係ないが。
JavaScriptなValidatorはまだ実装されんのかねー スニペットに書いてたAJAXなやり方だと負荷かかりすぎるわ。。 QuickForm風なヘルパーでも作るしかないかな。。
教えてください。 propelで作ったメソッドに $a = AAAAPeer::doSelectJoinBBBB($c); と $b = AAAAPeer::doSelect($c); があるのですが、 $b->getBBBB(); でBBBBのオブジェクトが取り出せます。 doSelectJoinBBBBはどんなときに使うと良いのでしょうか。
>>380 symfonyに期待するのではなく、既存ライブラリを組み込んでみた方が吉かと
ttp://blog.masuidrive.jp/articles/2006/01/05/validation >>381 18章にある。恐らく欲しい答えが。
So if you know that you will need related objects, call a doSelectJoinXXX() method to reduce the number of database queries--and improve the page performance.
つまりは、外部キーでリレーションしているオブジェクトをとってくるなら
doSelectJoinXXX()関数のほうが1度のクエリで取得できるので
パフォーマンスがちょびっと良いってことらしい。
>>382 ありがとう!
$b->getBBBB(); de またDBにアクセスするんですね。
doSelectJoinAll()だと、けっこうメモリ消費しそう・・・
>>382 レスサンクス!
そのvalidatorは見つけてたんだけど、
どうやってもprototypeを先に読み込んでくれないので腹立ってやめたw
日付フォームがあるせいだとは思うんだが。。
>>384 読み込み順序の指定(first or last)しても駄目だった?
>>385 そんなのあったのか!必死で探したのに。。
どこにあるの?orz
>> 386 アクション内だと $this->getResponse()->addJavaScript('prototype', 'first'); view.ymlでも指定できる
それをヒントにview.ymlの方を探してきた(´Д`)マジサンクス 後発の方もいるかもしれないので ---- // In the view.yml indexSuccess: stylesheets: [special: { position: first }] [php] // In the action $this->getResponse()->addStylesheet('special', 'first');
よく見たらStylesheetだったw でもactionのほうでなんとかなったのでサンクスorz
390 :
nobodyさん :2007/02/26(月) 15:00:43 ID:+JAM5eUf
質問です。 forwardメソッドを使う時に、パラメータを指定したい場合はどう書けば良いのでしょうか?
>>390 forwardの場合は、redirectと違ってそのまま使えないか?
・・・と、ここまで書いてふと思ったんだが、
// 一つ前のactionを取得する
$stack = $this->getContext()->getActionStack();
$size = $stack->getSize();
$action = $stack->getEntry($size - 2)->getActionInstance();
// 一つ前のmessageを拾う
$this->message = $action->message;
↑こんな感じの事をしたいのか?
>>391 例えば
$this->forward('userinfo','edit');
等でさらにユーザidを指定したい場合にどうすれば良いのかなと。
393 :
nobodyさん :2007/02/26(月) 17:38:27 ID:+JAM5eUf
初歩的な質問ですみませんが、 validator: fields: の設定はフォームタグのアクション属性に設定したアクションについて設定して、 fillin: の設定はフォームを出力するアクションについて設定すれば良いのですよね?
doSelectRS()の返値がfetchRow出来ないのだけど どうやって取り出したら良いの?
>>390 $this->getRequest()->getParameterHolder()->set('id', $id);
こんな感じでリクエストにセットすれば?
>>392 >>395 氏の言ってる方法が一番楽そうだと思う。
が、$this->user_idとしておいて
>>391 氏の方法を使えば、$action->user_idで取り出せるし、
自分だったら、forwardはやめて$this->redirect('userinfo/edit?user_id='. $user_id);
とする。
(redirectだと、渡したパラメータのみが引き継がれる事に注意。)
>>394 今、環境が無いのでおぼろげな記憶を頼りに書いてるんで間違ってたら申し訳ないが、
doSelectRS()って、result idが返るだけじゃなかったっけ?
doSelect()にしておくか、hydrate()する必要あるんじゃない?
397 :
392 :2007/02/26(月) 21:06:21 ID:???
>>395-396 レスありがとうございます。
その方法でやってみます。
redirectについてですが、
フォームのバリデーション後のrepopulationとしてのforwardですので
redirectだとエラーメッセージが出せない問題があります。
(それもリクエストにセットすれば良いのでしょうが、forwardだとデフォルトで出せます)
input_in_place_editor_tagをつかってます。 submit後 <p id="???"> aaa </p>これが、 <p class="" style="background-color: transparent; background-image: none; display: none;" title="Click to edit" id="???"><p id="???"> bbb </p></p> 上記のように<p>タグが入れ子になってしまいます。 分かる方見えませんでしょうか。
sfMail でメールを送信すると、softbank?の携帯で文字化け するのですが、何か解決方法はありませんか?
sfMailってutf-8だよね。
401 :
399 :2007/02/27(火) 20:24:12 ID:???
メールは ISO-2022-JP で送っています。 とりあえず、わかっている事は・・・ sfMail は phpmailer をラップしている。 setCharset で文字コードを指定できる。 PC(OE),docomo,au では文字化けしない。 メールのソースを見ると本文がエンコードされていない? って感じです。 softbankではこうするみたいなtipsって誰かしらないですか?
402 :
nobodyさん :2007/02/28(水) 20:10:52 ID:zzIvX9Qb
forwardはreturnのようなもので実行されるともう処理が実行元に戻って来ませんが 戻って来てほしい場合に使うべき方法って何かありますか?
JavascriptHelperに InPlaceCollectionEditor ってないよねぇ
って書いた後にinput_in_place_editor_tagだとテキストだから 質問の答えになってないな。スマソ。
なんでInPlaceCollectionEditor ないんだろ
ひろしです。 何度アップグレードしようとしても 下記のようなエラーが表示されアップグレード出来んとです。 ERROR: pear.symfony-project.com/symfony not installed どうすればアップグレード出来るようになるかわかる方いらっしゃいましたら やり方をお教え頂きたいとです。
>>407 symfony/symfony-beta
symfonyでiso-2022-jpのメールを送るのはどうすれば良いでしょうか。 $var = $this->getPresentationFor('mail','send'); これでやってみましたが、全文が取得されてしまい ヘッダ部とメール本文が分けれません。
The Definitive Guide to symfonyってsymfonyサイトで見れるじゃん わざわざ買った奴オワタ
>>410 紙ベースの方が見易いって人もたくさんいると思うけどね。
フランチョス の寄付だろ?
本の方が読みやすいと思うけどな。 特に英文読むのは疲れるから。
日本語の本なら買うけど 英文はページ翻訳できる分htmlの方がいい
416 :
nobodyさん :2007/03/04(日) 17:31:16 ID:G5zu5HC1
http://codezine.jp/a/article/aid/837.aspx?p=2 を参考にsymfonyを勉強しているんですが、symfony propel-build-schemaの所で
[propel-creole-transform] There was an error building XML from metadata: Could not connect [User Info: host=localhost dbname=\'codezine\' user=\'postgres\']
と言ったエラーが出ます。
databases.ymlのphptype: をpgsql
propel.iniを下記に変更しています。
propel.database = pgsql
propel.database.createUrl = pgsql://localhost/
propel.database.url = pgsql://postgres:@localhost/codezine
環境はwinXP Apache2.2 postgreSQL8.1です。
どこがおかしいのでしょうか。。
どうかご教授のよろしくお願い致します。
フランチョスはフラ公のくせにアメ語で本書けてすげーな
418 :
409 :2007/03/04(日) 20:20:08 ID:???
iso-2022-jpでメールを送信することがどーしても出来ません。 PHPMailer の CreateBody()メソッドでメールのbody部を処理している ようなのですが、ここでmb_convert_encodingをしようと思います。 このような場合はオーバーライドすればいいのでしょうか。
>>416 エラーメッセージにcodezineという名のデータベースが存在しない、と表示されているわけだけど。
何らかの環境からそのDBへの接続は成功してる?
schema.xmlがあるんじゃないか?
ajaxからポストされるデータをvaildateしてる?
1.0になっていつの間にか $sf_last_module/$sf_last_action消えてね? form書く時面倒くさくなくて良かったのに。
消えてる…完全に…w・h・y・?
$sf_context->getActionStack()->getLastEntry()->getModuleName()などで 取得はできるが…面倒くせえ…why…
425 :
407 :2007/03/05(月) 00:00:12 ID:???
>>408 pear upgrade symfony/symfony-beta
とやっても
ERROR: pear.symfony-project.com/symfony not installed
と表示されるとです。
0.6.3以来久しぶりに見るけど ZFの影響も見られるね actionのregisterValidator廃止して 代わりにvalidateメソッド実装させたり。 mojaviの血が薄くなっていく…
validatorディレクトリに アクション名.ymlを作って そこに fillin: enabled:true って書いたらフォームに値をセットしてくれるんですよね? 書いてみても思ったように動作しないのですが何か他に作業が要りますか? アクションクラスやテンプレートファイルは触る必要あります?
fillin: enabled: on param: name: フォーム名称
>>429 IDEの補完機能使えって意味?
ZS使ってるから自動補完は効くんだけど、
それでも面倒は面倒。
Viewを変更できない(sfPHPViewで決め打ちされてる)から
ヘルパで解決しようと思ってるよ
>>432 'true', 'on', '+', 'yes', 'y' ==> true
ってことで両方とも正解
userinfoテーブルと grouptableテーブル(m:nテーブル)と groupinfoテーブル(所属グループ)があって、 複数のユーザが一つのグループに、 または一人のユーザが複数のグループに属す場合がある というようなDB設計になっているのだけど、 schema.ymlのgrouptableのとこにfkについて書いてみたら doSelectJoinAll()がgrouptableクラスにしか生成されず、 それを使ってみたらgrouptableからuserinfoを辿って userinfoからまたgrouptableを辿って、RECURSIONだと言うエラーが出て 壊れ気味の結果セットが返ってきます。 どこが間違っているのでしょうか? 何か参考になるページがあれば教えて下さい。
イモくさかったバリデーション関係随分すっきりしたなー yamlだと動的に出来なかったけど callbackバリデータも整備されたし。 ( ^ー゚)♭fabien GJ!!
>>436 >yamlだと動的に出来なかったけど
できるよ。YAML内にPHP埋め込める
まじ?そんなに柔軟だったのか 逆に柔軟すぎて怖い気もしないでもないが…
DOM拡張モジュール入ってないorz symfony使おうと思ったら PHPをソースから入れるの前提ですか
そんなことはない。 rpmでOK。 それより今日のカンファレンスは行くのか? 巴里のどこだ?
パリのロンドンじゃね?
>>441 RPMのconfigureを後から変えられるの?
linuxでphp5使ってるでしょ? yum で普通にゲットできるでしょ。
おまいら、 escaping_strategy と escaping_method って設定してる? これってすげー重い気がするけど、どうですか。
yum install php-dom
>>444 ,446
激しくthanks!
あやうく色々入れ直すところだった
>>445 設定してるけど特に遅さは気にならない
大量のオブジェクトをアサインしたら遅くなるのかな
>>437 In the production environment, the configuration is cached, so the configuration files are parsed (and executed) only once after the cache is cleared.
って言ってるから完全に動的ではないんじゃ?
設定ファイル中の定数的な値を嵌め込んだりはできるけど
いつの間にかコンバータも出来てるじゃん プレビューリリースで不満だったところが全部直ってる感じ。 素晴らしい。
repopulationのfillinが効かないんだけど、つかえてる人いるの?
criteriaはsqlの隠ぺいのために使ってるんだろうけど、要らないね。 ものすごくいらない。 あと俺の考えだとモデルクラスがテーブルごとに作られるのもおかしい。 クラスは共通、オブジェクトに名前つけて区別すれば良い。 コードを自動生成するとはいっても滅茶苦茶質の悪いものを大量に吐いてるだけな印象。 手で組むとしたらありえないくらい冗長なコードになってる。 なんで世界的に勢いのあるFWがこんなレベルなんだ。
文句はsymfonyじゃなくて、Propelへどうぞ Propelいやなら、Doctrineでも使ってみたら
>>452 >あと俺の考えだとモデルクラスがテーブルごとに作られるのもおかしい。
>クラスは共通、オブジェクトに名前つけて区別すれば良い。
これに関しては同意しかねる、O/Rマッパすらないんじゃ話にならねえ
が、propelがイケてないのは同意
railsのactiverecordを真似てphpで実装しようとすると
どうしても言語実装のせいで限界が出てくるので
モデルクラスを先に全部生成しちゃってお茶を濁してる感じ
実装上しょうがないのはわかるがあまり好きじゃない
455 :
452 :2007/03/06(火) 19:45:19 ID:???
>>454 俺が言ってる設計は、例えば
$userinfos=sf_db::getTable("userinfo");
$articles=sf_db::getTable("article");
というようなもの。
コード書くときはいつもこういう設計をしてるし実際うまくいってると思う。
fillinつかえてない? frontendで見たときにfilterのとこちゃんと見てみて。 あと、htmlのキャッシュどうなってる?
symfonyのアクションクラスの中でpearのDB.phpをrequireするとエラー出る? symfonyのgetConnectionとexecuteQuery使うと 返値の結果セットがfetchRowもってなくて面倒なのでDB.php使いたい。(使うしか方法が分からない) doSelectの返値はたしかtoArrayメソッドがあるけど、executeQueryの返値にはないとか 非常にめんどいが、こんな仕様にする必要があるのだろうか? とりあえず俺は検索を実行して配列を得たいのだけど、どうすれば良いんだろう? 本当はdoselectjoinallとかが使えれば良いんだけど変な動作するし 一つjoinするだけならdoselectjoinxxxxでいけるけど二つ以上はダメとかそんな仕様ありえんし。
458 :
457 :2007/03/06(火) 20:35:25 ID:???
配列じゃないからarray_mergeもうまくいかんし symfonyはjoinに対してどんな手段を提供してるの?
fillin使えてない人はform名入れるところにform内要素名入れてるんじゃね? 俺はそれでつまった
DBだけは自前実装してる 「こうしたいんだけどどうするんだろう?」の疑問を調べるのに 時間食いまくりでぶち切れた。
461 :
457 :2007/03/06(火) 20:49:18 ID:???
ああ俺もたった今ぶち切れたところだ mysqlに直接ログインして手で叩いて複数レコード返るのを確認したSQLが $con=Propel::getConnection(); $rs=$con->executeQuery($sql); var_dump($rs); ってやると1レコードも返ってきてないのはなぜだなぜ挙動が違うんだ 糞仕様のせいでかえれねえええええええええええええええええええええええ
PDOで実装してくれ。 必ずプリペアドもつけてくれよ。
>>457 もちつけ。
$rsがNULLってるってこと?
それとも$rsが結果の配列ではないという事なのかな?
俺の環境では$rsにはイテレータが返ってきて、
while($rs->next()){
print $rs->get("COLUMN_NAME");
}
って感じでアクセス出来るけどなぁ。
漏れも
>>407 と同じエラー(ERROR: pear.symfony-project.com/symfony not installed)
って出てインスコできないんだけど原因わかる人いたら教えて
ちなみにbetaつけてやってみたけど_だった orz
あーやっぱりsfExecutionFilterとかsfValidatorManager書き換えてえ ハードコーディング癖は直ってねーなfabien カンファレンスで直訴してくるか fucking連呼で
オリジナルヘルパの上に一枚ラップする感じに myヘルパ書いたら結構いい感じになった。 こういうのは生でするもんじゃねーな
symfonyはXSS対策のトークン用意してないの?
なにそれ。
正しい画面からポストされたかどうかを確かめるワンタイムトークン…
それってXSS? XSS対策は escaping_strategy じゃないっすか?
あ、CSRFか…
入力画面1→入力画面2→入力画面3→登録 って流れだったら、 画面遷移ごとにバリデーションしておいて、 登録前にもう一回全部をバリデーションするじゃん。 そうなるとvalidate/*.ymlが冗長になるけど そのあたりどうしてますか?
> 登録前にもう一回全部をバリデーションするじゃん。 そんなことはない。 バリデーションさせたいときに、各アクションのvalidate/*.ymlを 作ればよい。
475 :
457 :2007/03/07(水) 11:48:08 ID:???
>>463 $rsはNULLではないが、
$rs->getRow()の結果がNULL
doSelectJoinAll使ってる人いますか?
つかってます。
>>473 入力画面1からURL手打ち等で入力画面3に入られたりしたら
データ揃ってない事態になるでしょ?
そういう時のために最後に一括チェックしませんか?
そこでflashですよ!
このスレを見ている人はこんなスレも見ています。(ver 0.20) 昭和51年度生まれの無職スレ Part9 [無職・だめ] 昭和51年度生まれのダメ人間の巣窟スレPart36 [無職・だめ] 前から気になってたが このスレに昭和51年生まれの駄目人間いるよね。 そんな駄目人間がsymfonyで何をしようとしてるか教えて。
>>479 遷移ごとにワンタイムトークンチェック?
俺はワンタイムトークンチェックは
決定的な行為の直前=ストレージへのアクセスの直前だけしてるなぁ
戻るボタン使われたりリロードされたりした時に
異常動作になりやすいから。
このへん人によって結構違いそう。
>>474 1.flashにトークン入れる
2.画面に表示,hiddenにトークンいれる(同時にflashが自動的にクリアされる)
3.POSTされる
4.flashにトークン残ってないから検証できない
ってならない?
>>478 ごめん、俺はsymfony初心者で今までネイティブ関数でゴリゴリ書いてた
バカだからアドバイスできる立場じゃないんだけど…
1画面移動するごとにDB登録する仕様で作成
→時々、phpmyadmin等で巡回して、変なデータ(最後まで画面遷移して
ないやつ)を見つけたら削除
という方式でやってるよ。
今まで決済絡まないシステムしか作ったこと無いからこの辺結構アバウトかも…
手動ガベージコレクタンキタコレw アバウト云々じゃなくて設計の問題かと
手動GCテラワロス 技術者じゃねえw
>>483 symfony勉強中でセッション関連まだやってないけど
1.flashにセッション入れる
2.画面表示、またflashにセッション入れる
っていうやり方で出来ない?
それflashの使い方的にどうなの? 素直にセッションでやりゃいいんじゃないかと
GCをcronにやらせるとしても 一画面遷移ごとにDB登録はアリなの? 俺はDBは極力いじらせたくないからなるべく少なくする方向でやってるけど
492 :
487 :2007/03/07(水) 19:02:07 ID:???
>>488 確かにわざわざflash使ってなにやってんだろうって気がするけど
普通にセッション使うと、複数人で一つのWEBサイト作ってる時に
セッション配列のキーが別ページで被って気づき難いバグになった事があった。
じゃあ必要無くなった時点でセッション要素をクリアすれば、と思うが
あるページからURL直叩きで他のページに移動した時の
セッションのキー被りは非常に防ぎづらいので、
こういう使い方でもflashは便利だと思う。
てかセッションに各コンテンツのネームスペースくらい割り当てとけよ
ブラウザを複数開けていじられる可能性を考えると DB書きこみ前の一括チェックは欠かせないな。 トークンも画面ごとにネームスペース変えて 上書きが起こらないようにしないといけない。 考えると頭痛くなるが…。
画面遷移がある限り セッション変数の中身すら信用できるわけではないってことだよな。 今まで作ったアプリのこと考えると… \(^o^)/オワタ
俺も\(^o^)/オワタ お前も\(^o^)/オワタ みんな\(^o^)/オワタ
ピースフレームワークをヒントにしたらいいんかな? 限界状態マシーンとかいう機能を搭載してるらしいが
つーかsymfonyにセッション変数削除用メソッドなくね? removeAttributeみたいなのいるだろ
漏れも気になってた。 ちなみに、nullセットしてるよ
1.フラッシュにワントークンパスワード入れる、hiddenにも同じ値持たせる 2.次回アクセス時にflashの値とhiddenの値を比較 また、このアクセス時に前回のフラッシュの値は自動的に消滅 セッションとフラッシュは同じようなものだが フラッシュは次回アクセス時に消去されることが約束されているセッション 自前でセッションで行うのであればそれでもいいけど そんなことしなくてもフラッシュ使うといいよ。 というわけで、474は間違い。次回アクセス時にフラッシュは存在する というわけで、487も間違い。flashにセッションを入れるというのは無意味
あるんだけどな。。 $this->getUser()->getAttributeHolder()->remove($name, $namespace)
>>501 WOW! さんくす
さっそくmyUserクラスに追加した
漏れのsymfonyサイトに静的なhtmlがあるんだけど、 そのhtmlの一部にsymfonyからのデータを参照させたいんだけど、 どうすれば良いでしょうか。
なかなか難しいことを言ってくるな。
その静的なhtmlにsymfonyのデータの 誰が見た時のいつの時点の何を表示させるのか によってちがうだろうな。
symfony内に置く汎用クラスの名前って 大文字ではじめる?小文字ではじめる?
symfony内ならsfつけて書いてるが、 自分は極力汎用クラスは外に出して、PEARコーディング規約で 書くようにしてる。
俺は自前クラスはsf付けないな symfony純正のしるしという認識だ
その認識はやめたほうがいい。プラグインのクラスにもsfつきまくってるだろ。 別に純正の印ではない
symfony本家のカンファレンスのページに ちんぽにーの名で書き込んだ奴 お前らの一人だろw
>>510 やめた方がいいことはないだろw
何の弊害もないんだから。
自前クラスとsymfonyパッケージ中のクラスの区別が付いて
むしろいいんじゃね?
513 :
503 :2007/03/08(木) 08:34:31 ID:???
インクルードすればいいのかなと思ったんだけど、、 sfのどのファイルをインクルードすればいいのか分からない。
もっと基礎からやった方がいいんじゃないか? 静的ファイルからインクルードするという意味が分からない JavaScriptを吐いて動的に表示するというわけでもなさそうだし。
普通のHTMLからsymfonyのviewの値を参照したいんだよ。
普通のHTMLにそんな機能はない
で、その普通のhtmlというのに表示させたい値というのは symfonyで誰が見たどの時点の値なんだと聞いている
使ってる用語の曖昧さといい symfony使うの早すぎる段階だろ…常識で考えて。 簡単簡単て言われてるけど全然簡単なものじゃないよこれ。 素のPHPの方がはるかに簡単。
>>516 MVCの意味とか分かってますか?
そもそも、なんでsymfony使ってるんだ?
myActionやmyUserもMyAction,MyUserにした方がいいんかな
アッパーキャメルケースって言葉初めて聞いたw 調べてみたらなるほどこういうことか。。
すみません、今日symfonyインストールしたんですが、 Win機:symfony.batができていて、symfonyコマンドも使える(init-project〜propel-model-buildまでOK) CentOS機:phpのbinディレクトリにsymfonyはできているが、symfonyコマンドが使えない という状態に陥って困っています。 どちらもローカルPCで、pearコマンドでインストールしました。 Cent機ではpearコマンドを使うときphpのbinディレクトリから./pearとして使っていたのですが、symfonyの コマンドでプロジェクトを作る時は、プロジェクトディレクトリに居ないといけませんよね? どうやって使えばいいのでしょうか?? 私のやり方は何か根本的に間違っていますか? phpは5.2.1をjp.php.netからDLしてソースからビルドしたものです。 configure時に--disable-cgi --enable-cliでCLI版を指定済みです。 どなたか分かる方いらっしゃいましたら教えていただけませんか?
PEAR_BINにパスひとつ通せやしないこんな世の中じゃ
俺も聞いたことなかったよ なんとなく慣習的にクラス名はアッパー メソッド名はローワーのキャメルケースにしてたけど
ん?変数もアッパーキャメル…? なんか気持ち悪くね?
使いやすくする為に個人的なクラス群を作って どんなプロジェクトでもいれてるんだが i とか v もそうしないとだめなのかね
FOR ($I=0;$I<100;$I++) とか書くとBASICっぽいw
>>521 symfonyのコードの変数どこ見てもlower camelcaseじゃん
ドキュメント間違ってるんじゃね?
アッパーキャメルでアッパー決めるぅ〜♪
>>524 Warning: session_write_close() [function.session-write-close]: write failed: Disk quota exceeded (122) in /virtual/gekibaka/php/lib/php/symfony/user/sfUser.class.php on line 214
Warning: session_write_close() [function.session-write-close]: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in /virtual/gekibaka/php/lib/php/symfony/user/sfUser.class.php on line 214
>>455 なかなかよさそうと思ってそんな感じにしようと思ったが
全部同一クラスだとテーブル独自のラップが出来ないな
やっぱ1テーブル1クラスがよさげ
>>454 >railsのactiverecordを真似てphpで実装しようとすると
>どうしても言語実装のせいで限界が出てくるので
別にrails真似てつくったものでもないし、
activerecord自体を真似るのに言語実装の限界も関係ないよ。
propelはもっとずっと前からあるものだし。
activerecordを真似るのはPHPでもさほど難しいことではない。
propelのコード生成は俺はむしろ助かってるけどね。
activerecordみたいに実体がないと、IDEとかでの保守がすげぇ大変。
コード補完やPHPソース側でテーブルの構造がさっと確認できるpropelのような
マッパの方がずっといい。特にテーブル数が増えてくるとそう感じる。
loginActionを作成しても デフォルトのCredentials Requiredページに飛ばされる 何・故?
frontend でちゃんとlogみろ。 {sfUser} automatic user logout こんなログないか?
レスありがとう なんと正しいテンプレートファイルがないだけだった ない時は代替で変なの出さずにエラーにしてくれYO!
普通のActionだとテンプレートファイルがない時はエラーになるのに… なんだこの糞仕様 fabienが許せない (#゚Д゚)フルフル
日本人の考え not equal フラ公の考え
Error404もテンプレートをなくすとデフォルトテンプレートが表示される イレギュラーなページでは テンプレートが作られないケースもあるだろうという配慮なのか・・・
If you need to remove a file defined at a higher level, just add a minus sign (-) in front of the file name in the lower-level definition view.ymlの 親設定を子設定中で取り消しできるこのアイデアはクールだな 何かのパクリ?
548 :
547 :2007/03/10(土) 11:24:50 ID:???
すまん。事故解決。これから頑張る。
codezineのおかげで爆発的にユーザが増えそう。 たぶん日本語の本も出版されるであろうし。
Browsing Your Own YAML Fileっていうけどさー 毎回パースさせてたら遅くてしかたないだろ…常識で考えて。
普通YAMLはキャッシュするだろ・・・常識で考えて。
勝手にキャッシュしてくれんの?
する。 cacheディレクトリ見れ。
oh! smart!
$config = sfConfig::get('sf_app_module_dir').'/'.$this->getModuleName().'/config/convert.yml'; $array = sfYaml::load($config); Action内にこんな感じに書いたが cache内に変化ないよ? 何か書かないといけないの?
config_handlers.ymlで設定したりsfConfigCacheクラス使ったりしたらできた しかしYAMLっていまいち書きにくいな 普段タブインデントにしてるのに YAMLだけスペースだし 縦に長くなると上の要素と横位置合わせるのだるいし。
君のエディタにスペースインデント機能はないのかい
CredentialsとAuthenticateの違いは何ですか? Credentialsに複数のロールを持たせられるようですが まったくロールがない=Authenticateされてない ということではないのでしょうか? Authenticateが何のためにあるのか分かりません。 やはりフランス人は馬鹿なのでしょうか?
>>557 使ってるのはZend Studioで
カスタマイズでスペースインデントとタブインデント切り替えられるんだけど
一時的なインデント設定ができないんだよね。
範囲選択してスペース押した時にスペースインデント出来たらいいんだけど…。
>>558 とりあえず馬鹿なのはお前だな。それだけは教えてあげよう。
おまいら、sf_timeout:どのくらいに設定してますか? 3600?
>>560 その答えでは「CredentialsがAuthenticateを包含する」という真理に対する
反論になっていませんね。
さいきん変な奴が増えたな。
>>538 propelが真似てるのはJavaのTorqueだな。
actionで下のようにオブジェクトごと 細かく、viewに渡すのと、viewでわける方法とどちらがいいのでしょうか。 $bbb = $obj->getBBB(); $this->aaa = $obj; $this->bbb = $bbb;
>>558 setAuthenticated/getAuthenticatedはsymfonyの管理下にあるサイト全体に対して認証状態にあるかどうか。
credentialsは、ページごとにユーザが表示する権利を持っているかどうか。
Authenticatedせずに credentialsに値を設定することはありえますか?
568 :
560 :2007/03/11(日) 22:41:33 ID:???
つまりAuthenticatedは
何らかのログイン状態にあることをおおざっぱに示した
不完全な指標である・・・
そのように考えてよろしいですか?
>>563 あなたは昭和51年度生まれの無職ですね。
569 :
560 :2007/03/11(日) 22:46:46 ID:???
そもそもAuthenticatedというロールをcredentialsに持たせるようにしたらいいだけ ですし・・・ やはり、Authenticatedは不要としか思えませんね・・・ ここがRoRを猿真似したフレームワークの限界でしょうか・・・
>>565 ValueObject的なオブジェクトだったらオブジェクトごと渡すかな
結局はオブジェクトの性質によるんじゃない?
>>569 そんなこと言ったら$_SESSIONあるんだから、Credentialsも不要じゃん。
Symfonyには(というかMojaviの頃からだけど)ログインという形で一貫した方式が用意されているんだから、Authenticatedは意味としても至極わかり易いと思うよ。
さらに細かく、ユーザごとに個別のアクセス権限を与えたいときはCredentialsも使えるようになっているわけだし。
別にCredentialsをAuthenticatedの代替として使ってもいいけど、その分さらに細かくしっかりした仕様設計が必要になるというだけのこと。
572 :
560 :2007/03/11(日) 23:48:28 ID:???
うーむなるほど・・・ 先にAuthenticatedが生まれ、後からCredentialsが加えられたと・・・ それなら分かります。ありがとうございました。
573 :
本家560 :2007/03/12(月) 08:23:00 ID:???
いつの間にかオレの偽者が出没してるwww
てか、偽者のオレ、おまえ明らかに
>>558 だろ。
あのさ、おまえが馬鹿だってのは事実だろ。例えばLinuxユーザーが
root権限を持ってても、ログインしてなきゃ意味がないだろ。
単に自分が理解できないだけのくせに
>>やはりフランス人は馬鹿なのでしょうか?
って言うのはかなり失礼。フランス人が嫌いなら国産のフレームワーク
使えば??
偽物っていうか数字間違えただけじゃね?
あなたは昭和51年度生まれの無職ですね。
昭和51年度生まれの奴まじ気になる なんでそんな自虐的なスレに入り浸ってるんだよw
>>578 マニュアル読めばわかることを、5000円も払って教えてもらうのか?
>>521 関連して、DBのテーブル名にも命名規則があるね。
守らないと使えない機能が出てくる。
守ると便利機能が使えるけど守らなくてもいい、という所もあるけど
中には守らないとライブラリ単位でそもそも使えなくなる、という所もある。
そうそう! テーブル名とカラム名がかぶってて大変だったわ。
ってか技術者に英語は必須なの? お前ら英語できる?
sfMySQLSessionStorageこれ使っているひといる?
ちょい遅いよね。
symfonyは、propelでDBからモデルクラス生成をすると 例えばUserInfoテーブルからUserinfoクラスが生成されるように 一定の規則に基づいて名前が変換される。 ところでsfPropelManytoManyの第二引数は テーブル名としてもクラス名としても使われている。 なのでテーブル名とクラス名が異なる場合、 テーブル名に合わせればクラスが存在しないと言われクラス名に合わせればテーブルが見つからないという。 つまり、symfony(propel)による自動変換の時に 少しでも名前が変わってしまうようなテーブル名の付け方では 使えないライブラリが出てくるということ。 という理解は合っているだろうか? DBの命名規則ってどうしてますか?規約とかある?
589 :
588 :2007/03/13(火) 12:15:45 ID:???
補足: sfPropelManyToMany::getRelatedObjectsの事です。
>>588 symfonyもいくらなんでもそこまでダサくないよ。
schema.ymlを記述する時に、
tagged_relation:
_attributes: { phpName: Tagged }
みたいに生成されるクラス名を明示しておけば、
$this->bookmarks = sfPropelManyToMany::getRelatedObjects($tag, 'Tagged');
と書いても問題なく動きます。
_idで推測してFK扱いにする機能、 _IDって書くと機能しないのな。 ちょっとハード杉
新しくモジュールを作った時たまに lib/model/omに作られるbase○○Peerクラスで Fatal error: Cannot redefine class constant というエラーが出る。 実際にファイルを見てみると確かに同じ定数を二度定義している。 (TABLE_NAMEという定数) でしかもその二つの定数の内容が違うのでどっち消していいか分からなくなる。
596 :
594 :2007/03/13(火) 19:03:30 ID:???
原因判明。 モデルクラスがtable_name(対応しているテーブル名)と各カラムの定数を持つのだけど、 table_nameというカラムがあったために同じ名前で二度定数が定義されていた。
MySQLのテーブル名やカラム名は全部バッククォートで囲んで欲しいな
モデルクラスのTABLE_NAMEのとこにバッククォートつけてみたら そんなテーブル定義されていませんエラー schema.ymlのテーブル名のとこにバッククォートつけてみたら なぜか反映されず(消されてしまってる?) エスケープシーケンスつけても変わらず。 予約語になってるテーブル名は使えないのか?
失礼、schema.ymlにバッククォート付きでテーブル名書いたら出来た。 もうちょっと使ってみないとどこかで不具合あるかもしれないが・・・
>>586 >また,日本語でのドキュメントとしては,おやぢ組氏により翻訳されたものがあるため,こちらを読み進めても良いだろう。
ワロタ
>>579 独学で1日かかる以上のことが分かるんだったら
まあまあ安いんじゃね?
おまいら RDB は MySQL 使ってるやつが多いのか? schema は yaml で書いてるの?
当然!
yamlなんかでいちいち書くわけねーじゃん。 ER図どうすんだよ
パフォーマンス対決でジャンゴに大敗してたsymfony 1.0になって少しはマシになったのかいプゲラ?
基本的に何も変わってません。
「プゲラ」って久しぶりに見た
セキュリティーホールだらけのPHPで もっさりFW使うってどんだけMだよw
>>604 ん?
1.schema.yml
2.propel-build-sql
3.propel-insert-sql
4.dbdesigner4
610 :
nobodyさん :2007/03/15(木) 15:49:53 ID:9ghaU3pB
俺はMySQLじゃなくてPostgreSQLなんだけど、 dbdesigner4 が使えるという点だけがうらやましぃ。。。
postgresqlはer図起こしてくれるツール無いの? visioとか出来なかったっけ?
>>610 Ecripse の Clay とかってやつはいかがか
\(^o^)/ \(^o^)/ PHPオワタ ) ) ノ ノ (((( > ̄ > )))) \(^o^)/ ((( < ̄< )))) ) ) ((( > ̄ > )))) symfonyオワタ
\(^o^)/ \(^o^)/ Rubyオワタ ) ) ノ ノ (((( > ̄ > )))) \(^o^)/ ((( < ̄< )))) ) ) ((( > ̄ > )))) railsオワタ
? 分かる様に言わないと発言する意味が無いよ
>>612 dbdesignerはフリーのオープンソース。
Clayは…
2ステップで済むものを4ステップ踏んでりゃ馬鹿と言われても仕方ない
>>609 に書かれてるのが4項目あるから4ステップって言ってる?
たぶん
>>609 の手順の内容と影響が分かってない。
頭の悪い人にも分かる様に教えてあげると、 今考えられる一番効率の良い手順は2候補ある。 1.yaml書く 2.モデルクラス自動生成 3.DB自動生成 4.ER図自動生成 1.ER図書く 2.DB自動生成 3.yaml自動生成 4.モデルクラス自動生成 yamlを書くかER図を書くか、と考えれば明らかにyaml書く方が楽。 symfonyはFKを推測して書いてくれる機能等があるから操作量が少なくて済むし、 ER図からはモデルクラスの再生成まで3ステップ踏まないといけないのに比べyamlは1ステップで済む。 モデルクラス←yaml⇔DB⇔ER図 の工程の中で端っこにあるER図は不利。
そうか、ER図も書かずにyamlを先に書くんだ。 それが「頭の良い人」のやり方なんだ。驚いたな。
>>622 どっちを先に書こうとどちらも自動生成出来る。
明らかにyaml書く方が楽
>>624 意味を汲み取れよバカにされてんだぞおまえw
相手にわかる様に発言しなきゃ意味が無い。 相手を不快にさせる事を目的に発言するのは屑だし、そうとしか読み取れ無いよ。
設計せずにコードを書くとは驚きだな、ってことだろ。 設計=ER図、コード=yamlな。 もっとも、自動生成できるからWYSIWYGで描いてるか そうでないかぐらいの差だが。
横やりだが、624、お前の方がバカだから引き下がった方がいい。
630 :
629 :2007/03/17(土) 09:23:11 ID:???
あぁ。すまん。すでに同じ所読んでるんだな(汗 釣ってくるorz
昭和51年度生まれの無職だな。
632 :
623 :2007/03/17(土) 11:11:11 ID:???
取り敢えず失礼しました。 ×smarty ○symfony >269 返答ありがとう。created_at と updated_at は便利そうなので 既存のテーブルに組み込もうと思ってました。 気になったのは >581さんとか >588さんの話。 そりゃ、yaml を書き換えれば定義し直せるんだけど メンテのことも考えて、命名規約をちゃんとしたいなぁと。
633 :
623 :2007/03/17(土) 11:13:01 ID:???
あ。×>269 ○>629 ちょと外出て頭冷やしてくる…
ちょっと分からない事があるので質問させてください。 ログインしていないと見られない、 /user/profile/34 というURLがあったとします。 ログインしていない人がそこにアクセスされたとき、ログインフォームを表示して、ログインしたら元のURL (/user/profile/34) に戻して上げたいんです。 ※ URLは例でいろいろなURLで同じようにしたいと思っています こんな感じの流れにする場合、最初にリクエストがあったURLを覚えておかないといけないと思うのですが どこでURLを覚える処理を入れるのが妥当でしょうか? 認証が必要なアクションが要求されてログインしていなかったらそのアクションでURLを記憶 しておけばいいかなと思っていたのですが、そのアクション(この場合 user/profile)が実行される前にログインフォームに forwardされてしまいます。
>>634 askeetでログイン画面のチュートリアルの所で referer いじってる所がそうなんだな。
ただ、よく覚えてないんだが、ログイン画面の前でredirectされちまうのかうまくいかなかった覚えがある。
(だとしたら、routingの段階でいじらないようにしないと解決方法無いと思う・・・)
>>635 リファラーだと、ログインエラーで、何回かログイン操作を繰り返したりすると
もうだめじゃん
>>636 うまくいかなかったというのに突っ込んでもしょうがないのでは?
っつか、
>>635 の書いているのは、リファラを取ろうにも、routingの段階でredirectされてしまうから手段が無い、という事なんでわ?
638 :
636 :2007/03/17(土) 23:12:19 ID:???
>>639 そんな変なブログに取り上げられるのはちょっと勘弁
>>640 変て…Yappoは結構有名なサイトだよ
別にsymfonyのことを悪く言ってるわけでもないのにカワイソス
これもすべて639のせいだなww
てか無修正多すぎ なんでこんなリスクを取ってるんだYappoは?
画ちゃんねるみたいに踏み込まれるぞ
こんなサイト運営者をフォローする
>>642 はどんな人なんだろ
まあyappo自身が貼ってるわけでもないし… 逮捕されるのは貼った奴だからいいんじゃね?
運営してるのはyappoだし、 その場合逮捕されるのもyappoだよ
railsで作るyappoサイトのスレになります
is_secureのバグ致命的だろ…
yappouてRailsで作られてるの?
大文字にするだけでアクセス可能になるってことは symfonyで構築されたサイトのセキュリティーをやすやすと突破できるってこと 構築したFWを大々的に発表するのはリスクだな
でもis_secureなんかで判定するか? おれは100%credentialとセットだったから大丈夫だったけど
symfonyというか、PHPの仕様上しょうがないと割り切るか… sfPropelActAsNestedSetBehaviorPluginとか、 こんな風に名前が果てしなく長くなるとどうにかしてほしい…
どんどん伸びてそのうち物語になります
>>627 そんなのは開発によりけりでしょ?
まずプロトタイプを作るような開発を一人でやってるから
DB設計なんて変更ありまくりでER図なんて後回し。
仕様書類は他人との知識共有の為にあるだけだから。
>>663 もういいって…。すげえ見苦しいよ、君。
665 :
nobodyさん :2007/03/19(月) 23:35:29 ID:G1GjmBKU
symfonyで、何故かvaludateとexecuteをそれぞれ2回通ってしまう事象が稀に発生するんだけど、 同じ事象を経験した人いない? なかなか再現手順が見つからず難儀てしてます。
だから->isFirstCall() があるんじゃないの?
filterだよね。
1.0.1キタコレ
>407 >464 アプグレしようと思ったら、ウチの環境でもこうなった。 パッケージのダウンロードは最後まで行くんだけどな…
symfonyで作ったフォームでPOSTすると、なんだかx=29&y=29とか 勝手につくけどなんで!?
submitがimageになってるんじゃね?
imageにすると、x=29&y=29付くんですか!しらなかった・・・
rsync_exclude.txtにfrontend記述したのにあっぷされて 大変ななことになってしまったわ!
原因は何だったの?
FTPでフォルダごとうpしてますた
symfony sync つかってあがってしまったので 気をつけたほうがいいぞ。>all
そんな愚かな真似はしない。
なんで上がってしまうんだよ 単に記述が間違ってただけじゃないの?
robots.txtあるの知らなかった infoseekでサイトの登録チェックして初めて気づいたよ あやうくgoogleに登録されないところだったアブネ
クラス追加したらキャッシュクリアしないといけないのうざくね? キャッシュページ多いから時間かかるし。
yaml のパーサーをextension のやつにするとキャッシュクリアしたあとの遅さが ちょと改善されるらしいよ。
685 :
nobodyさん :2007/04/02(月) 10:20:59 ID:YVop49f1
ちょっと確認したいことがありまして
Zend Frameworkスレからきました。
mod_rewriteを使ってリクエストをindex.phpに集めて、URLからコントローラに振り分けるのは一緒だと思うので、こちらで質問してみます。
view(テンプレート)のCSSや画像はindex.phpからの相対パスで指定できますか?
あちらで相対パスは全部index.phpからのになると言われたのですが、うちの環境だと
入力したURLからの相対パスになります。
具体的には
http://www.hoge.jp/foo/bar/ で、表示されるviewのスタイルシートは("ドキュメントルート/styles/foobar.css"にcssファイルがあるとして)
<link href="../../styles/foobar.css" rel="stylesheet" type="text/css" />
こうしないと認識しません。
もちろん下のように絶対パスなら認識します。
<link href="/styles/foobar.css" rel="stylesheet" type="text/css" />
もしくは、あっちの板で教えていただいたのですが
<base href="
http://www.hoge.jp/ " />
とベースURLを指定すれば認識します。
多分この部分って、PHPは関係なくて(PHPでパスを書き換えることは出来るかもしれませんが)
apacheのmod_rewriteの問題っぽいのでこちらでもご意見をいただけるかと思い、書き込みました。
symfonyの皆さんはどうでしょうか?
ご意見お願いします
>>685 >あちらで相対パスは全部index.phpからのになると言われたのですが
これがダウト。入力したURLからの相対パスになるのでいい。
mod_rewriteを使っているかどうかはブラウザには関係がない。
http://example.com/foo/bar/ にアクセスすれば、example.comサーバの/foo/bar/ディレクトリに
アクセスしたと判定する。それでサーバがexample.com/index.phpを動かそうが、
example.com/foo/bar/index.htmlを返そうが、ブラウザは知ったことではない。
だから
<link href="styles/foobar.css" rel="stylesheet" type="text/css" />
と書けば、ブラウザは
http://example.com/foo/bar/styles/foobar.css にアクセスする。
687 :
685 :2007/04/03(火) 00:14:31 ID:???
>>686 ですよね?
ああ、すっきりした。
ありがとうございました。
syncって毎回パスワード入力するのが面倒くさいね
sshで公開鍵認証すれ
やり方教えて
symfony sync production koukai でできるよ。
ありがd
パンくずってどうやって作るんですか?
まずイースト菌と小麦粉を用意します
>>695 寒ーい。
なんでそんな寒いレスを平気ですることができるの?
やっぱり普段の生活のときも、そうやって寒い発言をして、
場をしょっちゅう凍りつかせたりしちゃうの?
じゃあYamazakiパンにでも行ってこい
フレンズパンだろ、常識的に考えて
マジレスするとググれば載ってる
symfonyはいつPropel1.3に対応してくれんだ? 1.1か?2.0か?
おやじさんのやつはわかりにくいです。
別スレでも書いたのですが、全く反応がなかったので、こちらで書かせてください。 spycとsyckではYAMLのパース結果が違うくないですか? spycに添付されていたspyc.ymlで比較してみたんだけど、違うようです。 (あと、syckは解析できなかった時に、"unknown type"を返しますよね? )
あーあるかも。 yaml関係で変なハマり方した記憶ある。 配列にしようと思って書いてるのに思ってる配列にならないとか。 そんなわけでyamlは好きじゃない。
Criteriaすげーな。 サブクエリもいけるじゃん。 速度だしたいときはBasePeerで配列でいけばいいし
clitoris すげーな。
触ると膨らむしなんかぬるぬるしてるしマジすげー。
すみません、クリのはなしよりも パンくずどーやってつくるんですか。
いや、パンくずより断然クリだろう。
パンくずとsymfony関係あんの? 好きに作れば良くないか?
おいおい。まだそんな話してたのかよ(;´д`)・・・ っつか、パンくずじゃ分からんって。 パンくずリストで検索すりゃ、すぐ分かるだろうが。 (っつか、どこかにスタック作って、pushしてくだけの話じゃね?)
パンくずって一昔前の単調なサイトでしか対応できん
そうだよね!
sfEzpdo試したやついる?
\(^o^)/ \(^o^)/ symfonyオワタ ) ) ノ ノ (((( > ̄ > )))) \(^o^)/ ((( < ̄< )))) ) ) ((( > ̄ > )))) code igniterハジマタ
code igniterなんてはじまった瞬間に終わってるけどな
この前フランチョスがRick Ellisに土下座してた、代官山で。 なんでかしらないけど。
なんでかしらないって、お前が病気なだけに決まってるじゃん
荒川の土手で「モウ終ワリダ・・・」ってつぶやいてる外人いたから よく見てみたらフランチョスだった。
>>717 始まったとたんに始まりまくりだっつーの
code igniterの欠点言ってみ?
1.0.2でた〜〜〜〜〜〜!!
symfony、CodeIgniterの影におびえて必死の逃走www
>>721 symfonyより遥かに生産性も実績も低く、活動も不活発。
まるで腐ったケーキ。
>>721 >code igniterの欠点言ってみ?
お前みたいにあちこちのスレを汚す質の低いユーザが多い。
たまごたっぷり焼きたてふんわりケーキだっつーの 実績は * BambooInvoice * Motortopia * Antonio Orozco * Kennedy Hahn * I ? Rant! * nuherbs co. * FilePanda * OSSGear こんなにある。 使えば分かるが生産性は低くない。 フォーラムはかなり活発で利用者の多さがうかがえる。 全体に軽く速度も出る。 こーのケーキおーいしいいいいいいパクパク
>>726 CIにこだわってないで状況によって他のFWも使えるように成長するべし。
で、ここはsymfonyのスレなんだな。
>>702 spycは簡易パーサだから、YAMLの仕様には準拠していない部分が多い。
仕様に忠実なのはSyckのほう。バグもあるけど。
設定ファイルぐらいなら複雑になるとは思えないから、安全に書けばsyckでも問題にはならないと思うんだけど、
実際にどんなの書いて問題になったの?
>>730 Syckは、
キーにTrue,False,Nullと書いていると無視される。
("True"と括ればOKだけど)
同レベルに、ハッシュ(文字列キー)と配列(順番キー)を混在できない。
(仕様は知らないけど、PHPの連想配列との互換性を考慮すると混在できてもいいと思う)
あとはエラーをちゃんと吐いてくれないので使いにくい。
YAMLをヤムルと呼ぶことを今始めて知った ワイエーエムエルと読んでたぜ… 誰か指摘しろよばかやろう
おれはヤ、エムエルだった
俺は恐れ多くて発音できなかった。
畏れ多くて
俺はただの線だと思ってた 字だったのね
俺は俺だった。
732はhtmlのことも ホトムルと読まずにエイチティーエムエルって言ってそう
ホトムル(笑)
いや、ホットメールだろ
symfony bookの日本語訳見てたら眩暈してきた。
すみません、質問です。 mojaviとsymfonyとは共存できるものなんでしょうか? 当方、mojaviをちょっとさわり始めたばかりです。
>>744 レスThx!
既にmojaviのシステムを乗せてるサーバで
symfonyで作ったシステムも乗せて動かしてみたいという要求があって、
果たして共存させられるものなのか疑問に思ったので。
・・・ますます怒られるレスになってまつか?
ディレクトリ分けたらいいだけじゃないの? あとPHP5じゃないと駄目だけど
大丈夫か?
rewriteあるから相当面倒だと思うけど。 別ドメインで virtual host すればともかく。
>>749 相当大変すか。
今調べたらmojavi の乗ってるサーバはPHP4ということが分かったので、
>>746 の条件でいうとアウトですね。
これはこれで「共存はムリです」と回答するのみなのでオーライです。
情報ありがとうございます。
やろうと思えばできるよ。 PHP5をインストールして、CGIかfastcgiで動かすとかすれば
>>749 同一URIでの振り分けなんて、rewriteある無しなんか関係無しに無理だろ
同じサーバとはあるがURIまで一緒とは書いてないんだけど大丈夫?
だったらvirtual hostとかいう条件付け必要ねーだろ
もう分かったって。イタイよ漏前。
はいはい
>>731 レス遅くてすまん。
> キーにTrue,False,Nullと書いていると無視される。
これってSyckが読み飛ばすということ?そんなことはないとおもうが。
> ("True"と括ればOKだけど)
これはTRUEではなく文字列としたいということ?
YAMLの仕様では true false null は文字列ではなくそれぞれ TRUE FALSE NULL だと解釈されることになってるけど、さすがにそんなことは知ってるだろうし、731がどうしたいのかが分からん。
> 同レベルに、ハッシュ(文字列キー)と配列(順番キー)を混在できない。
>(仕様は知らないけど、PHPの連想配列との互換性を考慮すると混在できてもいいと思う)
これはもう何のことかわからん。具体例を出してくれ。
> あとはエラーをちゃんと吐いてくれないので使いにくい。
エラーはちゃんと出していると思うが。エラーが分かりにくいというならわからんでもない。
ためしてみた。 > キーにTrue,False,Nullと書いていると無視される。 確かにSyckだと無視された。SpycだとTRUEやFALSEではなく勝手に文字列に変換された。 でもこれは、PHPの配列がTRUE, FALSE, NULLをキーに持てないのがそもそもの原因ではなかろうか(実際には1, 0, "" に変換される)。 TRUE, FALSE, NULLをキーにできないから、それらをキーに指定したmappingがあったときの動作は、YAML parserの各実装に委ねられている。その違いじゃないか。 PHPでYAMLを使うなら、true, false, nullをキーに指定しないようにすべきということだな。 > 同レベルに、ハッシュ(文字列キー)と配列(順番キー)を混在できない。 これはたぶん - aaa - bbb x: 10 y: 20 というようなのを書きたいということだろうけど、YAMLの仕様としては明らかに間違い。 これはエラーになるSyckが正しくて、エラーにならないSpycがおかしい。Spycはわざとそうしてるんだろうけど。 >(仕様は知らないけど、PHPの連想配列との互換性を考慮すると混在できてもいいと思う) なんでYAMLの仕様がPHPの仕様にあわせないといかんのだろう。YAMLで書くならYAMLの仕様に沿って書くべき。PHPの都合で文句言うのは筋違い。
759 :
nobodyさん :2007/05/21(月) 22:08:34 ID:gDUCkW6K
数ヶ月前に翻訳を名乗り出ていた者です。askeetとThe Definitive Guide to symfony
合わせて600ページの下翻訳が終わり、校正作業の期間が数ヶ月はかかる見込みなので
一旦公開することにします。
http://symfony.xrea.jp/
PHPのスレでDjangoすすめられてもなー ちいたんつかえならわからなくもないが
携帯向けのサイトにsymfonyを使おうと思うのですがパラメーターとHTMLの文字コードの変換(UTF8<-->sjis-win)はfilterでやればokでしょうか?
むしろフィルタ以外ではやりにくくない?
>>761 残念ながらdjangoが速いのは必要な機能を実装していないから。
初期コストでかすぎだし、実装繰り返したら最終的にsymfonyくらいに遅くなる。
少しは勉強しようね。
複数DBにすら対応してないもんな
ボトルムヘだな
## apps/myapps/conf/routing.yml bookmark_list: url: bookmark/:user_id/:page param: { module: bookmark, action: list } requirements: { page: \d+ } ↑のルーティングの設定で <?php echo link_to('list', 'bookmark/list?user_id=hogehoge&page=1')?> とやると => <a href="/symfonybookmark/list/hogehoge/1">list</a> のようにsymfonyとbookmarkの間の/が抜けてしまいます。設定をデフォルトに戻すと直りますがroutingの設定が間違っているのでしょうか?
公式ページにつながらねーorz APIどっかにミラーされてないかな
落ちてるな。。 こういうときのためにPDFを落としといた俺は天才。
困った。 sfSslRequirementPlugin使ってんだけど、あるアクションだけ ssl使いたくて、モジュールのsecurity.yml下記を記述しました。 testConfirm: require_ssl: true なぜかsslにリダイレクトしなくって、symfonyのソース読んでたら、 sfSecurityConfigHandler.class.php このphpの下記の節が どうやら、testConfirm を testconfirmに書き換えていて動かん… $retval = sprintf("<?php\n". "// auto-generated by sfSecurityConfigHandler\n". "// date: %s\n\$this->security = %s;\n", date('Y/m/d H:i:s'), var_export($myConfig, true)); sprintfが犯人なんだけど、sprintfの仕様にstrtolowerなんてあったでしょうか?
>>769 > url: bookmark/:user_id/:page
url: /bookmark/:user_id/:page
でいいと思うYO!
DBの仕様を変更するとき(テーブル、カラムなど変更する)かなり 緊張するんですけど、皆さんはちゃんとDBの設計しながら作ってますか?
作るわけねぇだろ。 その場の気分やノリでテーブル定義だ
テーブル名なんてaとかbだし(^o^)
でもプロジェクトがおーきくなったりすると、サービスなかなか 止められないじゃん。
大きくならねぇからw そんなの杞憂に終わる
session DB使ってる人 InnoDBつかってるん? もれはsessionだけMyISAM使いたいんだけど、InnoDBとMyISAMって両方つかるの?
sessionみたいに頻繁な書き換えが発生するもんにmyisam使いたがる理由がわからん
書き換えもinnodbに比較するとmyisamの方が速いんじゃないの?
>>782 書き換えはinnodbの方が全然速い。つーか頻繁な書き換えはmyisamじゃ弱いぞ。
マジなの? innodbってトランザクションあってホットバックアップできるだけと思ってた セッションは普通innodb?
デフォInnoDBで どう見てもマスタでトランザクションも必要なさそうなやつだけMyISAM
まあ、みんな自宅警備員で、点検項目を MySQL に入れて管理してるだけなんだけどさ。
あれ?PostgreSQL派っていない?
>>787 postgres使っているけどゴミ増えまくりそうな気がするのでセッション管理で使う気になれない。
8.3のHOT期待待ち
顧客データではまった折れ目も よみがなを登録するフィールド名でreadをつかってはいけない。 いいな絶対だぞ
`read`
フォームに「A」と「B」のフィールドがあったとして、 ・「A」に値が何もないときはtrue(Bには値はなくてもOK) ・「A」「B」ともに値が入っているときもtrue ・上記以外はfalse なんてときにvalidate.ymlだけでバリデートする方法ってある?
無理です。
>>791 要するに、Aは必須じゃなくてBだけが必須ってことじゃないの?
だったらBだけにrequiredをつければ解決だと思うんだけど。
>>793 ・「A」に値が何もないときはtrue(Bには値はなくてもOK)
ダメじゃん。
795 :
nobodyさん :2007/06/16(土) 04:05:48 ID:e4ZIfv4l
人員テーブル :個人情報 現場テーブル :作業開始時間 人員投入テーブル :人員FK、現場FK の3つがあって 今の時間より+−○時間以内に人員投入予定のない人間の情報をピッコアッポする場合 現場テーブルの作業開始時間から条件に合うPKを抽出> 人員投入テーブルからその現場PKの人員のPK取得> 人員テーブルからその人員PK以外を抽出 というのと、人員投入テーブルにも開始時間のフィールドをつくって 人員投入テーブルから開始時間をみて人員PK抽出> 人員テーブルからその人員PK以外を抽出 propelだとどれだけのことができるのかわかんないんだけど 上の二つの場合どっちがいいだろう? askeetみるとなるべくsqlにつながないほうがいいみたいなことかいてあんだけど
symfony 1.0.4 released
798 :
symfony日本語マニュアル :2007/06/22(金) 09:24:59 ID:6Wz6ZFTi
すみません言い忘れました。
>>759 さんの翻訳とは、別の訳になっています。
詳しくは、内容を見ていただければ分ると思います。
802 :
nobodyさん :2007/06/23(土) 03:38:31 ID:FCOLYlEQ
admin_check_listとかadmin_double_listとかの類が、便利なのはいいがめちゃ重いな… どういう内部処理してんだ?
>>802 既存CMSのカスタマイズを超える案件で、
すでに2件ほど使ってますよ。
既存CMSのカスタマイズってCMS本体のアップデートがあった時どうすんの?
フリ〜〜〜ズすんじゃね
既存CMSをカスタマイズってsymfonyとどう融合させてるんだろ? 「カスタマイズを超える」ってデータベースそのままで1からつくってるってことかいな
symfonyのサイトでFUD Forum Bulletin 使ってるよ
たぶん
>>804 は既存CMSのカスタマイズでは済まない案件を
symfonyで行っていると言っているんじゃないか。
そのようにしか捉えられないよな
>>810 私は>804じゃないけど、画像うpの送信前プレビューつけろとか、コンテンツの
並べ替えを直感的に(ドラッグアンドドロップで)できるようにしろとか、苦手の
ajax系機能を要求される管理画面はsymfonyのjsヘルパーが頼りw
一般人への公開用表示はsymfony使わないようにしてるけど。
それほど要求が高くないクラにはWordPressをすすめてるw
いまsymfony勉強中なんだが、DB関係の動作がサッパリわからない。 ymlファイルでDBの構成を表記して、そっからDBを作るのはわかるんだが、 そっからどうやってモデルが作られるの? カラム追加したときはどうなるの?もとあったデータは? って感じ。 フレームワークはあきらめた方がいいかな?
>>813 modelはコマンドラインでpropel-build-modelすればできる。
DBは、build-sqlするとymlにあわせたSQLの入ったファイルができるので
それをmysqladminでコピペ。(漏れの場合、もっといいやり方ある?)
カラムを変更した場合、modelはpropel-build-model一発で変更OK。
DBは手動で変更するか、データをdumpした上でbuild-sqlをコピペして
再構築。
>>814 propel-insert-sql
or
propel-build-all
816 :
813 :2007/06/27(水) 21:04:41 ID:???
>>814 なんかどの辺までフレームワークがやってくれることなのか
判断しにくいんだよね。DB回りは。
もうちっと頑張ってみるわ。
>>812 つーかいくらajaxが苦手つってもその程度の要求だけでsymfonyつかうのおかしいだろ
>>813 >そっからどうやってモデルが作られるの?
propel-build-model
>カラム追加したときはどうなるの?もとあったデータは?
propel-build-model
元あったデータは関係ない。
820 :
nobodyさん :2007/07/19(木) 18:52:17 ID:uIEpVMuJ
>791 group属性を使えばこれでいけるんじゃね? たぶんrequiredより優先したような気が。 fields: A: group: group1 B: group: group1 required: msg: なんたらかんたら
821 :
nobodyさん :2007/07/19(木) 18:56:43 ID:uIEpVMuJ
>791 インデントしっぱい。普段かきこまんからわからん。すまんす。 これでいけるかな? fields: A: group: group1 B: group: group1 required: msg: なんたらかんたら
822 :
名無しさん@そうだ選挙に行こう :2007/07/29(日) 14:18:01 ID:CgsYAC0g
sfValidatorManagerのソース見てたら、clearメソッドで $this->groups = null; $this->groups = array(); $this->names = null; $this->names = array(); という書き方してるんですが、 なんではじめにnullを代入してるんでしょうか。 ふつうに $this->groups = array(); $this->names = array(); とするのとは異なるんですか?
確かにフレームワークのソース見てたらそういうことしてるとこあるね 過去バージョンのバグ対応か何かかな? foreachの最中にreturnするとメモリリークするバグが 古いPHP5にあったとZFのソースに書いてあった 変なことする時はちゃんと理由書いて欲しいね
あるいはメモリがちゃんと解放されるとか?
たいした意味なさそうな予感
フランチョス「だってsean kirrがそうやってたから…」
823です。 う〜ん、特に意味はないのでしょうかね。 svnのヒストリーも見てみましたがわからず。。。 (最初からnull代入してました) 回答くださった方ありがとうございます。
ソース完全に読み込んだわけではないけど, 先に null を代入するのは,それより前にその変数への参照がどこかで作られてる可能性があるからじゃないかな? > // add a reference back to the group array to the file/param array > $entry['group'] =& $this->groups[$group]; って箇所とかあるから,ここより後に clear() が呼ばれた時に, $entry と $this->groups の参照関係を断ち切ることを明示する意味で null を代入.
$a = array('a','b','c'); $b = &$a; $a = null; $a = array(); var_dump($b); -->array(0){} nullを代入しても参照関係続いてない?
……続いてるねぇw シタリ顔で何か別の言語と勘違いしたようだ.すまん. 参照解除は unset() だーね……
null代入はメモリー解放のためだろ。 スコープアウトすれば自動的に解放されるけど逆にいえばスコープ内なら解放されない。 それを明示的に解放してるってことじゃねーの?
array()だけだと解放されないの?
print memory_get_usage(); → 96668 $a = array('a','b','c'); print memory_get_usage(); → 97088 $a = null; print memory_get_usage(); → 97128 $a = array(); print memory_get_usage(); → 97128 オブジェクト変数だとまた違うかもしれないが面倒になったので実験はパス
$a = null; で解放どころか増えてますやん
単にGC走ってないだけとか
パッケージのアンインストールってどうするん? pear uninstall symfony/symfony とやっても No package to uninstall given と出てしまうのですが。
>>838 removeじゃね?
ググれば出てくると思うが俺も探す気ないぜ。
pear uninstall symfony じゃね
pear uninstall symfony/symfony で uninstall ok: channel://pear.symfony-project.com/symfony-1.0.6 とでたが
>>835 気になったんでやってみた
$obj = null;
for ($idx = 0; $idx < 100; $idx++) {
echo '(' . $idx . ') ';
echo round(memory_get_usage() / 1024, 3);// 0=>531.813KB 1=>533.016KB 2=>533.078KB
echo "KB ";
$obj =& new Mail_Mime("\n");
echo round(memory_get_usage() / 1024, 3);// 0=>532.953KB 1=>533.078KB 2=>533.141KB
echo "KB ";
$obj = null;
echo round(memory_get_usage() / 1024, 3);// 0=>533.016KB 1=>533.078KB 2=>533.141KB
echo "KB ";
echo "\n";
}
null 代入の代わりに unset 使っても結果一緒。なんか微妙に増えていく
オブジェクトの代わりに array_fill() 使うと、徐々にメモリを食っていって、
ある値までくるとピタリと消費が止まる
ちなみに、PHP5.2.3 で、これと似たような構造のスクリプトを走らせたら、もりもりメモリを食い散らかして
2,3回ループしたところで memory limit した
memory_get_usage(true)だとどうなるかな?
ちょいと質問ー。 addGroupByColumnで集計を取りたいときってsymfonyではどう書けばいいの? addAsColumnつかえばなんかすごいことやってオブジェクトできるんじゃないかと淡い期待持ってたけど普通に出来なかった・・・
>>844 symfonyではってのが抽象的すぎてわからん。
symfonyの何をどう使った場合のことなの?
>>845 普通に読めばpropelを使ってsumとかで集計した結果を
オブジェクトでもらう方法を聞いてるんだろ。他にどう読み取れるんだ?
>>844 もちろん俺は知らん。
http://www.net-newbie.com/trans/mod_rewrite.html このように、mod_rewrite は複雑なステップをユーザに対して全般に
透過的にしようとがんばっていますが、とりあえず以下のことは覚えておいて
おくべきでしょう:サーバ毎のコンテキストにおける URL 操作は
実際高速でかつ有用であるのに対し、ディレクトリ毎の書き換えは、
この 鶏と卵の問題のため遅い上に役に立ちません。
しかしこれは、ごく平均的 なユーザにとって、(ローカルに制限された)
URL 操作のための唯一の方法 なのです。
だってさ!
rails系FWはだいたいそうだけどsymfonyも.htaccess中でmod_rewrite使ってるよね
やっぱhttp.confに移した方がいいんかな?
>>844 1. 集計項目を Criteria で addAsColumn する
2. model/HogePeer で doSelectRS をオーバライドして、getSelectColumns だけでなく getAsColumns の結果も見るようにする
3. doSelectRS を自分でコールしてフェッチループも自分で回す
or
model/Hoge で hydrate をオーバライドして、フルセット揃ってない項目でもオブジェクトに格納できるようにする
……というのが、おれの使った苦し紛れの方法
もっとスマートな解決法があるんじゃないかと思うけど時間かけられなくて見つけられなかった
849 :
844 :2007/08/11(土) 13:15:32 ID:???
>>848 今のところ1画面で使うだけなので私も簡単に出来る方法はないかと探してたんですが
ぜんぜん見つからなかったので・・・
その方法でためさせてもらいます。ありがとうございました。
>>849 その程度ならPeerからgetConnection(だっけ)でCreole取り出して
直接SQLクエリを投げる方がいいと思う
>>846 お前の説明を普通に読めばそれはsymfonyじゃなくてpropelだろ?
アホか?
846じゃないが
>>851 質問者はsymfonyとpropelのレイヤの違いを理解できてなくて
propelの話なんだけどsymfonyでって書いちゃってるんだなって
今回の844については普通に読み取れると思うよ
読み取れてるのに敢えて意地悪したいなら止めないけどさ。間違ってるのは確かなんだし
doCountじゃあだめなのか?
>>851 技術者としてのスキルはわからんが
クライアントへのリスニングスキルは皆無
>>854 微妙にかじったりした担当にあたるとかえってややこしくなるんだよなw
ここの人も、結局あっちに移った感がする。w
あっちって何?
VMwareつかって開発している人いる? 漏れはwindowsローカルでapache2 + mysql テスト環境つっくて 開発しているんだが何だが、VMware使う必要あるんかね?
そういえば、ここのレス少なくなったね。 あっちは、レス多くなってるしね。 そろそろ、おいらも、あっちいくかな・・・。orz
あっちってどこよ!?
死後の世界じゃね
>>858 使ってます。必ずしも必要ではないけど、プロジェクトによって使い分けるとか、ファイルコピーでバックアップ取れるとか2.5インチの外付けhddに入れて会社と家で同じ環境使うとか。
ところでwinの人はメール送信とかどうしてるの?
メールは捨ててますよ。
askeetが1.0対応したね。 また日本語訳を待つなんてできないから、今度は自分で訳しつつやってみるよ。
早くも2.0の話してるぞ。
おいお前ら。
ttp://php-sql-gdgd.jugem.jp/?eid=12 ここの見ながら複数のselectタグを連動するやつつくってんだけど
FireFoxだとものすごく変になっちゃうんだ・・・
一つ目のセレクトタグ選択した後、別のを選択しなおすと
2つ目がselect_tagの中にselect_tagが・・・
って具合になっちゃうよ。
remote_function内でposition指定とかいろいろやってみたがだめだった
IEもSafariもOperaもちゃんと表示されるんだけどなあ・・・
869 :
868 :2007/09/19(水) 22:44:10 ID:???
すまん。事故解決した。
870 :
868 :2007/09/20(木) 12:07:50 ID:???
原因は 親エレと子エレ同じ名前にしてた俺オワタ\(^o^)/ ってことでfirefoxは子、孫から探していってるってことらしいね
同じ id が被った場合には後ろに書かれた方が上書きしてくようなロジックなのだろうね
php5.2.4とsymfony(というかpropel?)の解決策なんかねーの? creoleに修正期待すんなみたいなブログみかけて萎え
symfony本発売日age
next version of Delicious is built with symfony. だってさ すげえな
symfony本買ったやつはいないのか
買ったけどまだアマゾヌから届いてねい
ちょっとだけ立ち読みしてきたけど、Ethnaの色違いで内容はあんまり濃くないね
sym本y届いたよー。 確かにちょっち内容薄い気もする。 けどwebで中途半端な情報をかき集めるのとくらべれば、 導入としてはそれなりに時間節約できるかも。 この程度の内容を消化しておけば、 web上の情報も吸収しやすくなると思われ。
symfonyで作ったサイトってロボットに拾われにくい? google botは来てるんだけど拾ってくれない・・・
確かロボよけのタグが埋め込まれてた気がする followなんとかとかそんなの
symfonyでpropelまったく使わないでやってる人いる?
Yahooがそう
俺はPropelがどうも好きになれないので、Zend_Db使ってるよ。
symfonyでpropel使ってる奴は素人
と自称プロが申しております
Zend_DbつかうならDoctrine使った方がまだマシ
やがてsymfonyがpropelを捨てる時が来るさ
yamlファイルにPHPコードを直接記述できましたっけ? できるならば、どう書けばよいですか。
できたような。 symfony.jp かどっかで見たぞ。
Zend_Dbはマジでひどい。Blobすらまともに扱えない恐ろしい代物。
Blobつかえるでしょ!
Blob型は使わないから関係ないや
blow job型も使えない
symfony 1.0.8 is out
symfony 使ってるひとって普通に sfSessionStorageを使用してるの?
897 :
nobodyさん :2007/10/20(土) 07:26:26 ID:UF1c0G86
symfony 2歳だね。 おめでとう!
>>893 blobすら使えないって時点で、他にもいろいろあるんじゃないかと考えないのか?
BLOB以外は使ってて問題なかったから、とは考えなかったのかい?
たまたま自分が使った機能では大丈夫だったけど blobすら使えないってことは 今後自分が使いたくなる機能で使えないものがあるかもしれないとは(ry
schema.ymlでunsigned設定したけど出来ません。 設定: unsigned:true 出来た人いますか?
原因が全く分かりません。誰か助けてください。 $ symfony propel-build-all $ symfony propel-generate-crud <app> <mod> <model> して lib/model に <model>.php と <model>Peer.php ができたのですが、作 成したモジュールにアクセスしてもページが空白になってしまいます。 また、エラーログに PHP Fatal error: Class '<model>Peer' not found in ... と表示されます。 ためしに他のモジュールを作って、 action 内で <model> を new してみたとこ ろ問題なく、このインスタンスから getPeer() すると同様のメッセージで終了して しまいます。 clear-cache しても全く改善されません。 原因が分かる方、教えてください。
使い方が間違ってる。 symfonyのページをよく読め。
>>902 です
技術評論社の symfony 本を見て薦めていたのですが、 symfony コ
マンドの使い方が間違っているのでしょうか?
<project>/lib 以下のクラスは自動的にロードされるものだとばかり
思っていたのですが、 <model>Peer は手動で require 書かなきゃだ
めなんですかね?
ここの人がそんなことやってました。
ttp://paranoid.dip.jp/kaworu/2007-10-08-3.html sandbox を試してみたところ、
>>902 の通りやってまこんなことはな
かったんだけどなぁ。
sandbox はアーカイブに含まれてる symfony 使ってるから動きが違
うんですか?
ちなみに symfony は svn の trunk から取ってきたやつを使ってま
す。
> 薦めて
「進めて」
>
>>902 の通りやってまこんなことは
「
>>902 の通りやってもこんなことは」
typo 多くてすみません orz
>>902 です
>>906 さん
cc は propel-generate-crud 後には必ずやってます。
今日も同様の手順で何回か試してみたのですが、全く同じ手順を行っている
にもかかわらず、成功したり失敗 (Class '<model>Peer' not found in ...) した
りするようになりました。
成功時も失敗時も全く同じ設定ファイル (database.yml, propel.ini,
schema.yml) を使っていて、以下の手順で構築を行っています。
1. init-project
2. init-app
2. database.yml, propel.ini, schema.yml の編集(実際はコピー)
3. propel-build-all
4. propel-generate-crud
5. cc
何か違うことやってるんですかね ... とりあえず動いたので良かったのですが、気
持ち悪いので再度検証してみます ...
>> 902 です。 原因が分かりました。 database.yml の設定で、書籍では dsn 表記を使い、 sandbox では phptype + database で接続設定を記述しているのですが、エラーになってい たパターンでは database 表記を行っているにもかかわらず phptype を指定し てなかったことが原因でした。 エラーにならなかったときは sand_box から database.yml をコピーして編集して いて、エラーのときは書籍の表記から dsn の行を database の行に差し替えて いただけで build-all していました。 お騒がせしてすみませんでした。ドキュメント熟読してきます ...
stable と svn trunk の validation の仕様って違うんですか? stable の sandbox では app_anme/modules/module_name/validate に action_name.yml 置いておけば検証してくれますが、 trunk の環境だと読んでくれ ない。 ついでに trunk 環境では actions.class.php に validateAction_name() を実装 しても全く無視されてしまう ...
symfony徹底攻略 [PHP徹底攻略シリーズ] 前田 雅央 (単行本 - 2007/12/1)
一瞬、著者は刑法学者かと思った
マンモスシリーズ?
黄マンモスです
今後導入するフレームワークの評価中でsymfonyも弄くってるんですが、 これ、1つのプロジェクト内で複数ドメインを運用するにはどうしたら 良いんでしょうかね? ドメインは違うけど、ライブラリとかモデルは共有したいんですが。 かなり初心者質問ですが、他にスレが見当たらなかったので・・
キャッシュファイルが多いからsymfony ccめちゃくちゃ時間かかるよー memory limit12Mにしてたらメモリ溢れエラーになったし ファイルベースの階層的なキャッシュシステムって取り回し良くないな・・
symfony cc myapp config でconfigだけの削除できたんだ・・・
symfony使ってると fatalエラーの時apacheのエラーログに出力されなくない? warningは記録されてるんだけど
>>914 .htaccessでフロントコントローラーを振り分ける設定が公式のどっかに書いてたよ。
# subdomain
RewriteCond %{HTTP_HOST} ^admin.*
RewriteRule ^(.*)$ admin.php [QSA,L]
みたいな感じで。
symfonyの新しい本買った人いない?
買ったよ!
内容どう?
922 :
nobodyさん :2007/12/09(日) 06:30:58 ID:dhVcC577
<input type="text" name="foo[bar]" value="aaa"> といったフィールドをヘルパー使って取得するにはどう書けば良いのでしょうか
ヘルパでは取得できないんじゃないか?
>>922 $foo = $this->getRequestParameter('foo');
$bar = $foo['bar'];
とか。
確か
$bar = $this->getRequestParameter('foo')['bar'];
でも行けたような気がする。
最近symfony触ってないから実装変わってたらゴメソ
なんかちょっと面倒になりそうすね。 ありがとうございました!
methodチェインは出来るけど、()[]って出来ないんじゃないかな?
input_tag('foo[bar]', $this->getRequestParameter('foo')['bar']); とはできないかも
symfonyってやたらとyamlが多くない? railsってこんなにあったっけ? こんなおれはcakeのほうが向いてんのかな
symfony は rails じゃないんだから rails より多かったり少なかったりしても別によくね
>>928 そんなん言ってたらJavaなんて無理っすよ。
931 :
nobodyさん :2007/12/13(木) 19:04:21 ID:PJB0j7FR
でかいシステムになるほど、設定ファイルのありがたさがわかるのかもよ? 俺は、多少スピードダウンでも、設定ファイルにできる部分は全て設定に しちゃうスタンスなんで、yamlありがたい…って思ってます。
本屋行ったらsoftbankがsymfony本出してたお
BBBのモジュールのCCCのアクションへアクセスする場合、
テンプレート内で以下のコードを記述して、
<?php form_tag("BBB/CCC", 'name=form'); ?>
画面上からサブミットボタンを押すとURLに
http://hoge/BBB/CCC と表示されてしまうんですが、
アクション名を表示しないようにはできないのでしょうか。
登録画面を作っていて、すべてPOSTで処理をしているので、登録→確認→完了
とすべて同じアドレス表示(
http://hoge/BBB )で表示したいと思っています。
actionクラス内で、redirectを使うとフォームの値が消えてしまって、forwardしか使えません。
解決策はあるのでしょうか。
/BBB で routing 書いて 呼ばれるアクション内から自前で forward() する でも redirect と forward の HTTP 的な違い(ブラウザの挙動の違い)とか理解できてなさそーだが その辺をきちんと理解しといた方が今後のためだよ
>>934 935のとおり、redirect と forward の HTTP 的な違いを理解したうえで
Flashパラメータを使うと便利。
>>935 >>936 そのroutingで対応した場合、すべて同じアクションが呼ばれるのでしょうか。
だとしたら、少し不便ですね;
redirectとforwardは理解していますが、redirectのときもsymfonyが
自動的にリクエストパラメータを付加してくれるような機能がないのかなと期待していたのですが、
ないんですね〜。
flashだと完全な力技になってしまうので、ちょっと厳しいですね〜。
あまり気にしないことにします。
ありがとうございました。
setFlashの3つめの引数 persist ってどんな意味?
S2Base with Symfony(ver1.0.8) を使っているんですが、 $container = S2ContainerFactory::create(PDO_DICON); $dao = $container->getComponent('UsrmstDao'); と呼び出したときに、Component[UsrmstDao] not found というエラーが発生したのですが どのような設定が抜けているのかわかりますか? UsrmstDao.diconファイルは、s2baseコマンドで作成できなくなっていたので、 自分で作成してみましたが、解決しませんでした。
941 :
nobodyさん :2008/01/08(火) 12:54:35 ID:G4LWzKOm
アプリケーション毎の設定値は各アプリケーションの app.yml に書くけど、 プロジェクト共通の設定値はどうするの? properties.ini とか使えるのか?
config.phpだろ!
「symfony」のフィードに最近 やたらナレッジデータベースとかいうところの記事が出るんだが不自然じゃね? だいたい「お前ナレッジデータベースに興味ねーだろ!」っていうようなブログで、 やたら宣伝口調。 なんかのマーケティングか何かか?
主婦みたいな奴がMVCとか語ってて笑える どいつもこいつも定型口調で心がこもってないw 上場→ゴミ株売り抜けのドリコム系狙いだな なさけねー
どのフィード?
流れてくるのナレッジデータベースのヤラセ記事ばっかで単純にうぜぇ
ナレッジデータベースうぜええええ ってかsymfonyで開発日記とか何やってんの? こんなゴミ記事でフィード埋め尽くされてていいの?
>>944 ブログミがブロゴミに見えた
実際ゴミ出し
ガベッジデータベース以外のフィードが流れてくるとホッとする
インキチ野郎に小道具に使われてフランチョス涙目www
symfony本何冊か出てるけどいいのある?
全部買え。
>>959 ありがとうございます。
<?php use_helper('Form'); ?>
とすることで実行できました。
CodeZineの記事にuse_helperの記述がないのは1.0だからですかね。
NGワード設定できるRSSリーダないかな? いいかげんナレッジデータベースのヤラセ記事ウザイわ symfonyみたいなマイナーで技術的なワードで送りこんでくんなよ
962 :
960 :2008/01/20(日) 15:52:32 ID:???
あれからいろいろ設定をいじってみたりしたんですが、 どうもsetting.ymlでの内容が反映されないようです。 1.1はあきらめて、素直に1.0を使うことにします。
EthnaのEthna_ControllerやCakePHPのAppControllerみたいに コントローラやモデルの基底クラスにメソッドを追加したいんだけど どうやるのがsymfony流?
964 :
nobodyさん :2008/01/21(月) 10:39:52 ID:5F5R4nGN
Ethnaとか詳しくないんで間違えてたらすまんが メソッドを追加した自作のクラスを作ったら、factories.ymlの記述を自作のクラスに変えるだけでできると思う。 あと、sfPropelParanoidBehaviorで使っていた覚えがあるmixinも、そういったメソッドを追加する機能だった気がするんだが、あれはpropel専用だったかもしれぬ。
965 :
nobodyさん :2008/01/21(月) 16:31:15 ID:onANTL0w
ちょっと相談にのってください。
Javascriptの中身をPHPで動的に変えたい時ってあるじゃない?
例えばそれを、
http://example.com/myModule/loadJavaScript ってアクションで実装したとします。
で、これを他のアクションなりビューから読み込むときって、
addJavascript('/myModule/loadJavaScript')なり、view.ymlで
javascripts: [/myModule/loadJavaScript]とかって書きたい
んだけれども。。。
自動的に.jsって拡張子がつけられてしまいますよね?
javascripts: [/myModule/loadJavaScript. ]とか書いてみたら
いけたんだけど、何か違うような気がするし。
こういう時って皆どうやってるんだろう。routing.ymlで設定
するのかな?やっぱりテンプレートに直書きしかないんだろうか。
>>964 サンクス、factories.ymlのぞいてみる。
symfony三日目で設定ファイルとかぜんぜん追い切れてない。
プロジェクト→アプリ→モジュール→テンプレートとどんどん粒度が細かくなっていって、
それぞれに設定があるからもう大変。
デフィニティヴブガイドをななめよみしたところ、ミキシンはなんにでも使えるっぽい印象だった。
あまり使いたいとは思わないので、よく覚えていない。スマン。
>>965 routing じゃないかなぁ……
デフォルトルーティングは全部消しちゃって、
存在する機能全部にルーティングきちんと書いてやるくらいの方がいい気がするんだけど、
なぜそう思うのかうまく説明できないな……
cakeからsymfonyに移行しようと思うんですがsymfonyの特徴って何がありますか ???
969 :
968 :2008/01/22(火) 14:01:47 ID:???
あとpropelが遅いってよく聞くんですがsymfonyでpropelのパフォーマンスってみなさんどうやってあげてるんですか?? 質問ばっかりですいません
propelを使わない
971 :
968 :2008/01/22(火) 21:01:00 ID:???
>>970 Doctrine使うってことですか?
とりあえずプラグインとかは試してみてるんですが、使っててバグとかありますか?
セッションへの値の格納は $this->getUser()->setAttribute なのに、 値の削除は $this->getUser()->getAttributeHolder()->remove って、なんか変じゃない? $this->getUser()->removeAttribute とは書けないのかな。
sfUserを拡張すればいいじゃん
そういや同僚がsfUserでなんかバグがあったとか言ってたな。 プロジェクト全部にぶっこんでるだけに確認しとかないと。
値の格納を $this->getUser()->getAttributeHolder()->set() でやればいんじゃね?
action拡張してremoveUserAttribute()メソッド作ればいいんじゃね
978 :
nobodyさん :2008/01/23(水) 12:09:31 ID:IccRdwAQ
>>971 970じゃないけどまだドクトリンは使い始めだけどいまのところ特に問題はないよ。
パフォーマンスはベンチで1.7倍くらいにはなってる。
sfActionはハードコーディングされてんだよな。たしか。だからsfUser(app/lib/myUser)を変更するのが一番楽かな
>>978 すごいね、それ。
DQLってのがどうも好きになれないんだが、Doctrine挑戦してみるか。
とおもったらDoctrineのサイトつながらねぇ(www
>977 >979が言うとおりapps/frontend/lib/myUser.class.phpに書けばいいんじゃね? <?php class myUser extends sfBasicSecurityUser { ... public function removeAttribute($nameSpace) { $this->getAttributeHolder()->removeNameSpace($nameSpace) } }
>974 Credentialかんけーな希ガス Secure loginが表示されるべき時に Credential loginが出たり。
>>967 routing.ymlに書いたほうが後から引数とかアクション名とか変えても一括変更できるし、デバッグもしやすいからじゃない?
すくなくともググルがよみそうなとこは最初からrouting.ymlに書いたほうがベター
後から仕様変更とかめんどすぎる
デフォルトルーティング全部消すのはヤな挙動するでるのでおすすめできない。
他人が勝手にやったプロジェクトで、エラー画面すらでずに原因わからず右往左往した経験が
>>979 >>982 ありがとうございます。myUser.classにメソッド追加してみます。
sfActionは拡張できないのかぁ・・・残念。
できればアクション内で$this->setUserAttributeとかやりたかった。
ハックしまくり大臣でActionも拡張したよ まだ1.0にもなる前のことだが…
plugin にpropel1.4があるからそれ使え。 それか、1.1まで待つか。 1.1はpropel標準装備だ。
おまいら次のスレタイは何がいい?
PHPフレームワークsymfony 2 とか普通でいい
>987 誰へのレス??? symfonyは0.6.3からpropelが標準だと思うが。
propel遅い氏ねって書いた人宛じゃないか
992 :
958 :2008/01/24(木) 19:44:17 ID:???
またヘルパでエラーに出くわしました。 I18Nを試しているのですが、テンプレートでメッセージを置き換えようとすると以下のエラーが出ます。 Fatal error: Call to undefined function __() settings.ymlで all: .settings: i18n: on standard_helpers: [Partial, Cache, Form, I18N] i18n.ymlで all: default_culture: ja_JP は設定済みです。 どうもstandard_helpersの設定が読み込まれていないような気がするのですが・・・。 テンプレート内で、use_helper('I18N')とすると、上記のエラーは出ません。 I18Nヘルパをデフォルトで読み込ませるにはどうしたらよいでしょうか? symfonyはVersion-1.0.12-PREです。
993 :
nobodyさん :2008/01/24(木) 20:02:06 ID:tKrnrn5K
994 :
nobodyさん :2008/01/24(木) 20:04:06 ID:tKrnrn5K
>>992 マンモス本に書いてあった気がする。
何かのymlに書くんだけどやり方は忘れた
>>985 app/frontend/lib/myAction.class.php
ってのを作って
class myActions extends sfActions
{
public function setUserAttribute()
{
コード
}
...
}
てな感じで関数を定義
その後
app/frontend/modules/aaaa/action/actions.class.php
の冒頭を
class aaaaActions extends sfActions
↓
class aaaaActions extends myActions
に書き換えれば拡張できる。
factories.ymlはいじらなくておk
996 :
995 :2008/01/24(木) 20:08:38 ID:???
誤:app/frontend/lib/myAction.class.php 正:app/frontend/lib/myActions.class.php
>>992 apps/frontend/config/settings.yml
all:
.settings:
standard_helpers: [へるぱ名]
998 :
958 :2008/01/24(木) 20:27:23 ID:???
>>992 すみません自己解決しました。
settings.ymlで、ログインモジュールの設定をしていたのですが、
そのグループとして .actionのコメントアウトをはずすのを忘れていたのが原因でした。
1.1.0−DEVでうまく動かなかったのも同じ原因かもしれません。
お騒がせして申し訳ありませんでした。
>>994 さん
>>997 さん
ありがとうございます。
うめ
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。