のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,904人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレ【PHP】フレームワーク CakePHP 3ホール目【本命】

    php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    851 : nobodyさん - 2008/05/23(金) 19:09:24 ID:??? (+32,+29,-3)
    >>849
    セオはリスク管理できないから、
    ダメーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー!!!!!!!!!
    852 : nobodyさん - 2008/05/23(金) 22:56:00 ID:??? (+47,+9,+0)
    ハァハァ~
    854 : nobodyさん - 2008/05/24(土) 09:43:12 ID:??? (-25,-29,-22)
    DBのトランザクション管理 と DI/AOP が どう関係があるのか?
    855 : nobodyさん - 2008/05/24(土) 11:08:39 ID:??? (+35,+29,-219)
    >>854
    ※ちょっとスレ違いでゴメン。

    DI/AOPを使えば、ロジック層の前後で自動的にトランザクションの
    開始とコミットを行うように設定できる。
    だからロジック層では特にトランザクションを意識しないで
    純粋にロジックだけを記述できる。
    もし、ロジック層で例外が発生した場合は自動でロールバックもしてくれる。

    他にもログの記述とかオブジェクト指向では対応できない
    横断的な処理はAOPの機能を使ってメソッドの呼び出しの前後で
    自動的に挟み込んでくれたりできる。

    ってな感じでやってるとDI/AOP無しのアプリはきついなーと
    思うんだけど、そこら辺はうまいやり方があるのかね?
    857 : nobodyさん - 2008/05/25(日) 00:56:50 ID:??? (+37,+29,-94)
    >>855
    できるかどうかという話と、
    実際にやるのかという話は別問題。

    たしかにAOPを使えば、そういうことが言語レベルで出来るだろう。

    だが、オブジェクト指向で作られていても
    実際には、トランザクションやログなど、よく使われる場所で
    処理を割り込ませることができるような設計になっているから問題ない。
    858 : nobodyさん - 2008/05/25(日) 22:20:48 ID:??? (+38,+29,-167)
    cakephp でサイトを一つつくります。
    そのcakephpってどうする?

    1.プラグインとかコンポーネントとか残したまま再利用。
    2.もっかい新しくcakephpをダウンロードして、プラグインとか入れ直す。

    1だと、コードがどんどんぐちゃぐちゃになりそうだし、使わないコンポーネントとかも残る可能性がある。

    2だとプラグインとか入れ直すのが面倒下さい。

    僕的には1ですが、みなさんいかがでしょうか。
    859 : nobodyさん - 2008/05/25(日) 22:21:40 ID:??? (+33,+29,-32)
    >>858
    追記

    一個サイトをつくったあと、さらにもう一つの新しいサイトを作る場合。です。
    860 : nobodyさん - 2008/05/25(日) 23:45:46 ID:??? (+22,+29,+0)
    好きにすりゃいいよ。
    861 : nobodyさん - 2008/05/26(月) 09:21:10 ID:??? (-25,-30,-151)
    掲示板のシステムを CakePHP で作ろうと思っています。
    モデルは Post(記事) と Comment(コメント) です。
    そして Post 一覧表示で Post 毎の Comment の数も同時に表示したいと思います。

    この時、Comment の数はどのように算出するものなのでしょうか?
    自分で思いつく範囲は次の通りでした。

    1. Post 1つ毎に select count() from Comment where ~ を発行する。
    2. select * from Comment で全ての Comment を取得し、アプリ側で Post 毎に数をカウントする。
    3. Post テーブルに count 列を用意し Comment 登録時にインクリメントする(非正規化)。
    4. 3.の動作をトリガーで実現する。

    このようなケースはよくあると思うのですが、一般的にはどのような方法が使われている
    ものなのでしょうか?
    862 : nobodyさん - 2008/05/26(月) 15:22:28 ID:??? (-2,+5,-15)
    >>861
    それってアソシエーションを知った上での質問?
    863 : nobodyさん - 2008/05/26(月) 16:03:07 ID:7/wrhW70 (-20,+29,-19)
    >>862
    ああ…突っ込んじゃったよ。ほっときゃいいのに。
    868 : nobodyさん - 2008/05/26(月) 17:45:04 ID:??? (+22,+29,-134)
    >>867
    ありがとうございます。

    そして了解しました。不慣れな初心者なもので時間はかかるかもしれませんが、
    考えられうる全ての方法を実際に検証してみようと思います。

    確かに Comment のような小さなデータの場合、find($id) で総数をアプリ側でカウント
    するのと、findCount() でデータベースにカウントさせるのではそんなに変わらないかも
    しれませんね。ただ、Comment がカラム数 100 もあるようなデータの場合で、常に Post
    に対して数百も付属しているような場合だと結果は変わるような気がします。そのあたり
    も含めて検証してみようと思います。
    870 : nobodyさん - 2008/05/26(月) 18:49:48 ID:??? (+27,+29,-3)
    あるんじゃね?こんな書き込みあるぐらいなんだから。

    http://trac.cakephp.org/ticket/4652
    871 : nobodyさん - 2008/05/26(月) 19:38:42 ID:??? (+32,+29,-29)
    ありがとうございます!

    RORから使われているカウンターキャッシュという一般的な用語があったのですね。
    ここをみて理解できました。

    http://blog.matsimitsu.nl/code/163/cakephp-countercache

    behaviorを使ってカウントをインクリメントするのですね。この方法が一般的な方法で
    あるとわかっただけでも安心して使えそうです。色々とありがとうございました。
    874 : nobodyさん - 2008/05/27(火) 03:10:59 ID:??? (+22,+29,-4)
    なんかその設計が悪いんじゃないの・・
    875 : nobodyさん - 2008/05/27(火) 03:42:15 ID:??? (-29,-29,-117)
    ビジネスロジックを律儀にmodelに入れてる悪寒
    適度で良いんだよそんなの。細分化うざい。Controllerでやれ。

    それでもやっぱりビジネスロジックまとめたいというなら
    modelとcontrollerの間にservice層入れる。

    が、そんな規模のものはcakephpは想定してないんじゃないかね。
    877 : nobodyさん - 2008/05/27(火) 13:44:51 ID:??? (+37,+29,-46)
    その通りだと思う。悪寒の憶測で話したからずれたんだな。

    CakeのModel拡張して、Withで同時に拾ってくるようなマジック関数入れると
    もっと綺麗かなと思った。findBy的な。

    878 : nobodyさん - 2008/05/27(火) 14:40:04 ID:Dti8RTlW (-25,+29,-9)
    先ほどの質問>>873を同僚に話したところ、ビヘイビア使えば?と言われてしまいました
    880 : nobodyさん - 2008/05/27(火) 23:04:56 ID:??? (+24,+29,-21)
    >>878
    ビヘイビアですか・・・?

    出来ないことは無いとは思うけど、
    でもそれ、なんて名前のビヘイビアになるんだろう。

    (名前がわかれば、ビヘイビアにするのが妥当か判断できる)
    882 : nobodyさん - 2008/05/30(金) 15:33:24 ID:??? (-26,-29,-22)
    こんなのがあった。おかしいなぁ?昔はcurrvalを使っているのに・・・?

    どういうこと? なんか別の問題でもある?

    http://trac.cakephp.org/ticket/381 currval()になっている。

    http://trac.cakephp.org/ticket/598 このパッチでmax()になった?
    885 : nobodyさん - 2008/06/03(火) 17:13:31 ID:??? (-26,-29,-96)
    dreamweaver cs3 なんだけど、空の ctp ファイル作ると確実に
    内部エンコーディングを sjis にしちゃうから文字化けするよね。

    いつも新規作成 → 秀丸でutf-8変換 でやってんだけど。

    で、現在、 あ とか 人文字だけ残したファイルをコピペしてんだけど。
    なんかいい方法ない?
    886 : nobodyさん - 2008/06/03(火) 17:44:40 ID:??? (-18,-29,-65)
    >>885
    dreamweaverにデフォルトでUTF8と認識するってオプション無いの?

    まあ、文字数が少なかったらどっちみち文字化けは
    避けられないので、UTF8と認識するような文字をコメントで入れて
    おくのが確実だと思うけど。
    887 : 886 - 2008/06/03(火) 17:45:48 ID:??? (+27,+29,-6)
    で、俺は何を聞こうと思ってここに来たんだっけ・・・?
    888 : nobodyさん - 2008/06/03(火) 17:54:36 ID:??? (+8,+11,-31)
    >>885
    俺もそれが原因でコーディングだけeclipseに乗り換えた。
    ほんとは全部DWでやりたいのだけど・・・
    889 : nobodyさん - 2008/06/03(火) 18:59:53 ID:??? (+27,+20,-98)
    >>886
    ありがと!やっぱりそれしかなさそうだね。

    >>888
    仲間だ~

    で、教えてほしいんだけど、 eclipse と dw どっちが cakehp の開発効率あがりますか?
    例えば、デザインは dw がいいけど、 PHPコーディングは eclips のが圧倒的にいいよ!

    みたいな。

    教えて頂ければ、幸いです。
    890 : nobodyさん - 2008/06/03(火) 19:07:00 ID:Mx/TsVoL (+28,+29,-2)
    >>889
    そんなの人生いろいろ、人それぞれだろ。
    891 : 884 - 2008/06/03(火) 19:11:03 ID:??? (-26,-29,-138)
    PostgreSQLというか、データベースの扱いの仕様そのものがわかんね。

    Boolean型を保存するときは、1やtrueなんかを適当に変換して保存。
    呼び出すときは、データベースに入っているもの・・・というか
    ネイティブなデータベースAPIで取得した値をそのまま返すってのが
    今の動きなんだろうか?(PostgreSQLの場合、tとf)

    正式版になったら、統一されるのかな?
    データベースごとに戻ってくる値が違っていたりすると
    ややこしいなぁ
    892 : nobodyさん - 2008/06/03(火) 19:51:40 ID:??? (+23,+27,-18)
    それはSQLがリテラルじゃないから、とかじゃなくて?
    893 : nobodyさん - 2008/06/03(火) 21:14:16 ID:??? (-23,-30,-83)
    >>892
    ごめん、言っている意味がよくわからない。

    とりあえず、findAllして戻ってきた値が、
    MySQLとPostgreSQLで違うんだ。

    そしてPostgreSQLの仕様では
    http://itbtech.itboost.co.jp/man/postgres_man/datatype-boolean.html
    > Example 3-1から見てお分かり頂けるように、
    > boolean値の出力はtまたは fとなります。

    PostgreSQLは頭悪いとしか思えない・・・
    895 : nobodyさん - 2008/06/03(火) 21:46:11 ID:??? (+8,+25,+1)
    >>894
    くるな
    897 : nobodyさん - 2008/06/03(火) 22:08:23 ID:??? (+22,+29,-2)
    くるなっていったよね?
    899 : nobodyさん - 2008/06/04(水) 18:11:13 ID:??? (+35,+24,-18)
    コントローラでの処理に応じて、Viewを切り替える事は出来ますか?
    900 : 899 - 2008/06/04(水) 18:17:38 ID:??? (+21,+18,+0)
    >>899
    ちなみにフォルダ切り替えっぽいのは発見しました。
    http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=309&forum=12
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について