トップページ⇒php
1001コメント266KB

lt;?php symfonyとフランチョスのスレ ?gt;

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/11/18(土) 08:05:59ID:???
■symfony
http://www.symfony-project.com/

■askeet
http://www.symfony-project.com/askeet

■The symfony book
http://www.symfony-project.com/content/documentationHome.html

■symfonyで作られたサイトはこちら
http://www.symfony-project.com/trac/wiki/ApplicationsDevelopedWithSymfony#Japan


ver.1まで間近 がんばれフランチョス & ファビエンヌ フュージョンで
開発パワー2倍だ!


0357nobodyさん2007/02/13(火) 19:39:05ID:???

"The Definitive Guide to symfony"に書いてある。
0358nobodyさん2007/02/13(火) 20:24:43ID:GvUKv70m
書籍しかも英語かorz
簡単な事ならそこまでしたくないのだけど
大変なHACKになったりする?
03593562007/02/13(火) 21:32:46ID:GvUKv70m
要するに定数ファイルからDSNを読み取るのではなくて
実行時に動的に決定したDSNが使いたい、という事なのだけど
DSNなんていうDBMS臭を漂わせたものが果たして表層部にあるのかどうか。
0360nobodyさん2007/02/13(火) 21:35:58ID:???
> 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クラスの第二引数にハンドラを渡してあげればモデルを作らなくていいような気がする。
03613562007/02/13(火) 21:48:05ID:GvUKv70m
>>360
レスありがとう。
でもそれだとDBが増えるたびにdatabases.ymlに記述しなきゃいけない。
DB数が増えればdatabases.ymlのサイズがまずい事になる。
イメージとしては、databases.ymlからDSN情報を読み取っている部分に割り込みたい。
これが出来れば、URL引数等を見て動的にアクセス先DBを決定する事が出来る。
(FW無しのシステムでは同様のものを組んだ経験がある)
0362nobodyさん2007/02/13(火) 22:28:14ID:???
sfPropelDatabase.class.phpを拡張したものを
myPropelDatabase.class.phpとでもするのでokでは?
databases.ymlのサイズがまずいことってのがよくわからんけど..
URLで動的に設定を変えるならそのためのフィルター作るかな.自分なら.
0363nobodyさん2007/02/13(火) 23:20:46ID:???

最近はORM使わずに配列にしてるわ。
03643602007/02/13(火) 23:23:03ID:???
>>356
ふむふむ。
DSNの文字列は定義出来る状態ではなく、そのものズバリを動的に生成する必要があるわけだね。
そしたら、

****Peer::doSelect(new Criteria(), Creole::getConnection("mysql://hoge@localhost/hogehoge"));

こんな感じでどうかな?

URLからDSN文字列を自動生成させるなら、
>>362 さんも言ってる通り、Filter使って動的に生成してそれを使い回せばOKじゃないかな。
0365nobodyさん2007/02/14(水) 08:40:46ID:???
PHP版Ruby on Rails? - symfony
http://journal.mycom.co.jp/articles/2007/02/13/symfony/

もう少し人増えてくれるかな?w
0366nobodyさん2007/02/15(木) 10:09:05ID:???
>>364
そんな方法もあったんですね。元の質問者じゃないけど参考になります。

>>362
以前、フィルタを使う方法使ってたけどなんとなく気持ち悪かったので、
今では autoload.yml の Propel の部分を上書きしてオリジナルの sfPropelAutoload.php を走らせる方法を使ってたりします。
参考までに。
0367nobodyさん2007/02/15(木) 21:07:34ID:CtXa1NT7
>>365
増えないよたぶん
0368nobodyさん2007/02/15(木) 21:54:16ID:???

開発してて思うけど、windowsのアパッチの方が遅いな。
やっぱり、鯖はlinuxだわ。
0369nobodyさん2007/02/15(木) 22:40:23ID:???
$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
0370nobodyさん2007/02/16(金) 02:05:40ID:???
symfony の自動生成するスクリプト(propel-build-crud でできるファイル)
の初期状態を変えたいのですが、
スケルトンのようなファイルはどこにあるのでしょうか?
0371nobodyさん2007/02/16(金) 09:40:39ID:???
>>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/かな
0372nobodyさん2007/02/17(土) 05:24:27ID:???
rubyとかでもそうだけど、sfMixerって保守性かなり悪くしそうじゃね?
0373 ◆AngelH/kMI 2007/02/20(火) 01:24:35ID:???
http://www.symfony-project.com/weblog/2007/02/19/symfony-1-0-released.html
|x・)やっときたー
|)ミ
0374nobodyさん2007/02/20(火) 01:34:44ID:???
キ…(-_-)キ(_- )キ!(-  )キッ!(   )キタ(.  ゚)キタ!( ゚∀)キタ!!( ゚∀゚ )キタ━━━!!!
0375nobodyさん2007/02/20(火) 09:50:00ID:???
何度やってもsymfonyのpear upgradeに失敗するわけだが。。
DL失敗してるっぽいからアクセス殺到中なのかね?
0376nobodyさん2007/02/20(火) 09:56:19ID:???
uninstallしてからinstallしなおしたら入ったわぁ
PEARのupgradeの意味あるんかいな。。
0377 ◆AngelH/kMI 2007/02/20(火) 10:39:18ID:???
>>375-376
PEARのバージョンは?
あと、自分も一時期よく失敗してたけどRC1あたりから失敗することが無くなった気がする。
0378nobodyさん2007/02/21(水) 10:57:30ID:???
>>377
PEAR 1.4.9でupgrade失敗、
バージョンが悪いのかと仕方なく1.5にするもupgrade失敗
だったお
0379nobodyさん2007/02/22(木) 01:58:28ID:???
>>378
システムディレクトリに残ってるゴミは消したか?
pear.iniだとかそのへん。

まぁ俺はPEAR使ってないから関係ないが。
0380nobodyさん2007/02/22(木) 10:26:57ID:???
JavaScriptなValidatorはまだ実装されんのかねー
スニペットに書いてたAJAXなやり方だと負荷かかりすぎるわ。。
QuickForm風なヘルパーでも作るしかないかな。。
0381nobodyさん2007/02/22(木) 23:55:16ID:???
教えてください。

propelで作ったメソッドに
$a = AAAAPeer::doSelectJoinBBBB($c);
と
$b = AAAAPeer::doSelect($c);
があるのですが、
$b->getBBBB();
でBBBBのオブジェクトが取り出せます。
doSelectJoinBBBBはどんなときに使うと良いのでしょうか。
0382nobodyさん2007/02/23(金) 01:30:16ID:???
>>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度のクエリで取得できるので
パフォーマンスがちょびっと良いってことらしい。
0383nobodyさん2007/02/23(金) 07:14:50ID:???
>>382
ありがとう!

$b->getBBBB(); de またDBにアクセスするんですね。

doSelectJoinAll()だと、けっこうメモリ消費しそう・・・
0384nobodyさん2007/02/23(金) 18:29:27ID:???
>>382
レスサンクス!
そのvalidatorは見つけてたんだけど、
どうやってもprototypeを先に読み込んでくれないので腹立ってやめたw
日付フォームがあるせいだとは思うんだが。。
0385nobodyさん2007/02/23(金) 19:52:58ID:???
>>384
読み込み順序の指定(first or last)しても駄目だった?
0386nobodyさん2007/02/24(土) 22:19:07ID:???
>>385
そんなのあったのか!必死で探したのに。。
どこにあるの?orz
0387nobodyさん2007/02/24(土) 22:47:39ID:???
>> 386
アクション内だと
$this->getResponse()->addJavaScript('prototype', 'first');
view.ymlでも指定できる
0388nobodyさん2007/02/26(月) 08:39:23ID:???
それをヒントにview.ymlの方を探してきた(´Д`)マジサンクス
後発の方もいるかもしれないので
----

// In the view.yml
indexSuccess:
stylesheets: [special: { position: first }]

[php]
// In the action
$this->getResponse()->addStylesheet('special', 'first');
0389nobodyさん2007/02/26(月) 09:52:17ID:???
よく見たらStylesheetだったw でもactionのほうでなんとかなったのでサンクスorz
0390nobodyさん2007/02/26(月) 15:00:43ID:+JAM5eUf
質問です。
forwardメソッドを使う時に、パラメータを指定したい場合はどう書けば良いのでしょうか?
0391nobodyさん2007/02/26(月) 16:45:15ID:???
>>390
forwardの場合は、redirectと違ってそのまま使えないか?

・・・と、ここまで書いてふと思ったんだが、
// 一つ前のactionを取得する
$stack = $this->getContext()->getActionStack();
$size = $stack->getSize();
$action = $stack->getEntry($size - 2)->getActionInstance();
// 一つ前のmessageを拾う
$this->message = $action->message;
↑こんな感じの事をしたいのか?
0392nobodyさん2007/02/26(月) 17:34:38ID:???
>>391
例えば
$this->forward('userinfo','edit');
等でさらにユーザidを指定したい場合にどうすれば良いのかなと。
0393nobodyさん2007/02/26(月) 17:38:27ID:+JAM5eUf
初歩的な質問ですみませんが、
validator:
fields:
の設定はフォームタグのアクション属性に設定したアクションについて設定して、
fillin:
の設定はフォームを出力するアクションについて設定すれば良いのですよね?
0394nobodyさん2007/02/26(月) 19:39:24ID:???
doSelectRS()の返値がfetchRow出来ないのだけど
どうやって取り出したら良いの?
0395nobodyさん2007/02/26(月) 19:40:56ID:???
>>390
$this->getRequest()->getParameterHolder()->set('id', $id);
こんな感じでリクエストにセットすれば?
0396nobodyさん2007/02/26(月) 20:01:12ID:???
>>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()する必要あるんじゃない?
03973922007/02/26(月) 21:06:21ID:???
>>395-396
レスありがとうございます。
その方法でやってみます。
redirectについてですが、
フォームのバリデーション後のrepopulationとしてのforwardですので
redirectだとエラーメッセージが出せない問題があります。
(それもリクエストにセットすれば良いのでしょうが、forwardだとデフォルトで出せます)
0398nobodyさん2007/02/27(火) 08:36:20ID:???

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>タグが入れ子になってしまいます。

分かる方見えませんでしょうか。

0399nobodyさん2007/02/27(火) 19:35:26ID:???
sfMail でメールを送信すると、softbank?の携帯で文字化け
するのですが、何か解決方法はありませんか?

0400nobodyさん2007/02/27(火) 20:08:56ID:???
sfMailってutf-8だよね。
04013992007/02/27(火) 20:24:12ID:???
メールは ISO-2022-JP で送っています。

とりあえず、わかっている事は・・・
sfMail は phpmailer をラップしている。
setCharset で文字コードを指定できる。
PC(OE),docomo,au では文字化けしない。
メールのソースを見ると本文がエンコードされていない?

って感じです。
softbankではこうするみたいなtipsって誰かしらないですか?
0402nobodyさん2007/02/28(水) 20:10:52ID:zzIvX9Qb
forwardはreturnのようなもので実行されるともう処理が実行元に戻って来ませんが
戻って来てほしい場合に使うべき方法って何かありますか?
0403nobodyさん2007/02/28(水) 21:26:04ID:???

JavascriptHelperに InPlaceCollectionEditor ってないよねぇ

0404nobodyさん2007/02/28(水) 22:27:39ID:???
Google グループ作ってそっちで問答した方がいいよーなきがしつつ答えてみる

>>402
forwardのかわりにgetPresentationForでできる
ttp://develop.ddo.jp/new-tech/php/framework/symfony/memo/action/
の「描画処理させずに描画結果を変数で取得したい」参照

>>403
input_in_place_editor_tagがある
ttp://symfony.jp/index.php?Ajax
さんぷる
ttp://tool-man.org/examples/edit-in-place.html
0405nobodyさん2007/02/28(水) 22:37:24ID:???
って書いた後にinput_in_place_editor_tagだとテキストだから
質問の答えになってないな。スマソ。
0406nobodyさん2007/02/28(水) 22:54:52ID:???

なんでInPlaceCollectionEditor ないんだろ
0407nobodyさん2007/03/04(日) 00:37:01ID:???
ひろしです。
何度アップグレードしようとしても
下記のようなエラーが表示されアップグレード出来んとです。
ERROR: pear.symfony-project.com/symfony not installed

どうすればアップグレード出来るようになるかわかる方いらっしゃいましたら
やり方をお教え頂きたいとです。
0408nobodyさん2007/03/04(日) 02:11:00ID:???
>>407
symfony/symfony-beta
0409nobodyさん2007/03/04(日) 02:21:35ID:???

symfonyでiso-2022-jpのメールを送るのはどうすれば良いでしょうか。
$var = $this->getPresentationFor('mail','send');
これでやってみましたが、全文が取得されてしまい
ヘッダ部とメール本文が分けれません。

0410nobodyさん2007/03/04(日) 05:41:03ID:???
The Definitive Guide to symfonyってsymfonyサイトで見れるじゃん
わざわざ買った奴オワタ
0411nobodyさん2007/03/04(日) 09:28:49ID:???
>>410
紙ベースの方が見易いって人もたくさんいると思うけどね。
0412nobodyさん2007/03/04(日) 14:27:42ID:???
>>411
実際そうでもなけどね
0413nobodyさん2007/03/04(日) 15:41:09ID:???

フランチョス の寄付だろ?
0414nobodyさん2007/03/04(日) 15:43:02ID:???
本の方が読みやすいと思うけどな。
特に英文読むのは疲れるから。
0415nobodyさん2007/03/04(日) 16:07:42ID:???
日本語の本なら買うけど
英文はページ翻訳できる分htmlの方がいい
0416nobodyさん2007/03/04(日) 17:31:16ID: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です。

どこがおかしいのでしょうか。。
どうかご教授のよろしくお願い致します。
0417nobodyさん2007/03/04(日) 17:51:43ID:???
フランチョスはフラ公のくせにアメ語で本書けてすげーな
04184092007/03/04(日) 20:20:08ID:???

iso-2022-jpでメールを送信することがどーしても出来ません。

PHPMailer の CreateBody()メソッドでメールのbody部を処理している
ようなのですが、ここでmb_convert_encodingをしようと思います。

このような場合はオーバーライドすればいいのでしょうか。

0419 ◆AngelH/kMI 2007/03/04(日) 20:44:55ID:???
>>416
エラーメッセージにcodezineという名のデータベースが存在しない、と表示されているわけだけど。
何らかの環境からそのDBへの接続は成功してる?
0420nobodyさん2007/03/04(日) 20:49:49ID:???
schema.xmlがあるんじゃないか?
0421nobodyさん2007/03/04(日) 23:26:09ID:???
ajaxからポストされるデータをvaildateしてる?
0422nobodyさん2007/03/04(日) 23:34:43ID:???
1.0になっていつの間にか
$sf_last_module/$sf_last_action消えてね?
form書く時面倒くさくなくて良かったのに。
0423nobodyさん2007/03/04(日) 23:43:01ID:???
消えてる…完全に…w・h・y・?
0424nobodyさん2007/03/04(日) 23:53:28ID:???
$sf_context->getActionStack()->getLastEntry()->getModuleName()などで
取得はできるが…面倒くせえ…why…
04254072007/03/05(月) 00:00:12ID:???
>>408
pear upgrade symfony/symfony-beta
とやっても
ERROR: pear.symfony-project.com/symfony not installed
と表示されるとです。
0426nobodyさん2007/03/05(月) 00:07:33ID:???
http://www.symfony-project.com/trac/wiki/Documentation/ja_JP

ディフィニティブガイドを
地道に訳してくれてる人がいるな
0427nobodyさん2007/03/05(月) 01:03:36ID:???
>>409
だれも無反応なので反応してみる
$this->getPresentationFor('mail','simpleSend','myMail');
のようにsfMailの代わりのクラスを指定できることはご存知?

>>426
ttp://d.hatena.ne.jp/courant/20070302/1172836123
6月ごろには全部みれるかもよ
0428nobodyさん2007/03/05(月) 02:31:26ID:???
0.6.3以来久しぶりに見るけど
ZFの影響も見られるね
actionのregisterValidator廃止して
代わりにvalidateメソッド実装させたり。
mojaviの血が薄くなっていく…
0429nobodyさん2007/03/05(月) 08:33:59ID:???
>>424
PHPIDE
0430nobodyさん2007/03/05(月) 17:09:07ID:???
validatorディレクトリに
アクション名.ymlを作って
そこに
fillin:
enabled:true
って書いたらフォームに値をセットしてくれるんですよね?
書いてみても思ったように動作しないのですが何か他に作業が要りますか?
アクションクラスやテンプレートファイルは触る必要あります?
0431nobodyさん2007/03/05(月) 19:08:11ID:???
fillin:
  enabled:  on
  param:
    name:  フォーム名称
0432nobodyさん2007/03/05(月) 19:16:01ID:???
http://www.symfony-project.com/book/trunk/10-Forms
このページによると
enabled: true
と書かれていますが、確かにonと書かれている記事もWEB上で見つかります。
どちらが正しいのでしょう?

name値は、ページにフォームが一つしかない場合省略出来ると書かれているので
書いていません。
ちなみに、書くとすればformタグのnameですよね?
0433nobodyさん2007/03/05(月) 19:18:51ID:???
>>429
IDEの補完機能使えって意味?
ZS使ってるから自動補完は効くんだけど、
それでも面倒は面倒。
Viewを変更できない(sfPHPViewで決め打ちされてる)から
ヘルパで解決しようと思ってるよ
0434nobodyさん2007/03/05(月) 21:09:04ID:???
>>432
'true', 'on', '+', 'yes', 'y' ==> true
ってことで両方とも正解
0435nobodyさん2007/03/05(月) 22:51:36ID:???
userinfoテーブルと
grouptableテーブル(m:nテーブル)と
groupinfoテーブル(所属グループ)があって、
複数のユーザが一つのグループに、
または一人のユーザが複数のグループに属す場合がある
というようなDB設計になっているのだけど、
schema.ymlのgrouptableのとこにfkについて書いてみたら
doSelectJoinAll()がgrouptableクラスにしか生成されず、
それを使ってみたらgrouptableからuserinfoを辿って
userinfoからまたgrouptableを辿って、RECURSIONだと言うエラーが出て
壊れ気味の結果セットが返ってきます。
どこが間違っているのでしょうか?
何か参考になるページがあれば教えて下さい。
0436nobodyさん2007/03/06(火) 00:12:35ID:???
イモくさかったバリデーション関係随分すっきりしたなー
yamlだと動的に出来なかったけど
callbackバリデータも整備されたし。
( ^ー゚)♭fabien GJ!!
0437nobodyさん2007/03/06(火) 00:27:19ID:???
>>436
>yamlだと動的に出来なかったけど
できるよ。YAML内にPHP埋め込める
0438nobodyさん2007/03/06(火) 00:30:25ID:???
>>433
んなわけねーだろw
0439nobodyさん2007/03/06(火) 00:30:41ID:???
まじ?そんなに柔軟だったのか
逆に柔軟すぎて怖い気もしないでもないが…
0440nobodyさん2007/03/06(火) 01:16:04ID:???
DOM拡張モジュール入ってないorz
symfony使おうと思ったら
PHPをソースから入れるの前提ですか
0441nobodyさん2007/03/06(火) 01:18:35ID:???

そんなことはない。
rpmでOK。

それより今日のカンファレンスは行くのか?
巴里のどこだ?
0442nobodyさん2007/03/06(火) 01:30:33ID:???
パリのロンドンじゃね?
0443nobodyさん2007/03/06(火) 01:39:18ID:???
>>441
RPMのconfigureを後から変えられるの?
0444nobodyさん2007/03/06(火) 02:04:29ID:???
linuxでphp5使ってるでしょ?

yum で普通にゲットできるでしょ。
0445nobodyさん2007/03/06(火) 02:19:05ID:???
おまいら、
escaping_strategy と escaping_method
って設定してる?
これってすげー重い気がするけど、どうですか。
0446nobodyさん2007/03/06(火) 02:45:15ID:???
yum install php-dom
0447nobodyさん2007/03/06(火) 03:11:59ID:???
>>444,446
激しくthanks!
あやうく色々入れ直すところだった
0448nobodyさん2007/03/06(火) 03:50:43ID:???
>>445
設定してるけど特に遅さは気にならない
大量のオブジェクトをアサインしたら遅くなるのかな
0449nobodyさん2007/03/06(火) 06:18:28ID:???
>>437
In the production environment, the configuration is cached, so the configuration files are parsed (and executed) only once after the cache is cleared.
って言ってるから完全に動的ではないんじゃ?
設定ファイル中の定数的な値を嵌め込んだりはできるけど
0450nobodyさん2007/03/06(火) 06:34:36ID:???
いつの間にかコンバータも出来てるじゃん
プレビューリリースで不満だったところが全部直ってる感じ。
素晴らしい。
0451nobodyさん2007/03/06(火) 17:57:11ID:???
repopulationのfillinが効かないんだけど、つかえてる人いるの?
0452nobodyさん2007/03/06(火) 18:09:52ID:???
criteriaはsqlの隠ぺいのために使ってるんだろうけど、要らないね。
ものすごくいらない。
あと俺の考えだとモデルクラスがテーブルごとに作られるのもおかしい。
クラスは共通、オブジェクトに名前つけて区別すれば良い。
コードを自動生成するとはいっても滅茶苦茶質の悪いものを大量に吐いてるだけな印象。
手で組むとしたらありえないくらい冗長なコードになってる。
なんで世界的に勢いのあるFWがこんなレベルなんだ。
0453nobodyさん2007/03/06(火) 19:23:13ID:???
文句はsymfonyじゃなくて、Propelへどうぞ
Propelいやなら、Doctrineでも使ってみたら
0454nobodyさん2007/03/06(火) 19:30:08ID:???
>>452
>あと俺の考えだとモデルクラスがテーブルごとに作られるのもおかしい。
>クラスは共通、オブジェクトに名前つけて区別すれば良い。
これに関しては同意しかねる、O/Rマッパすらないんじゃ話にならねえ

が、propelがイケてないのは同意
railsのactiverecordを真似てphpで実装しようとすると
どうしても言語実装のせいで限界が出てくるので
モデルクラスを先に全部生成しちゃってお茶を濁してる感じ
実装上しょうがないのはわかるがあまり好きじゃない
04554522007/03/06(火) 19:45:19ID:???
>>454
俺が言ってる設計は、例えば
$userinfos=sf_db::getTable("userinfo");
$articles=sf_db::getTable("article");
というようなもの。
コード書くときはいつもこういう設計をしてるし実際うまくいってると思う。
0456nobodyさん2007/03/06(火) 20:00:36ID:???
fillinつかえてない?
frontendで見たときにfilterのとこちゃんと見てみて。

あと、htmlのキャッシュどうなってる?
■ このスレッドは過去ログ倉庫に格納されています