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

私的良スレ書庫

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

元スレ【PHP】フレームワーク CakePHP 6ホール目【v1.2】

php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
201 : 200 - 2009/04/12(日) 09:25:56 ID:??? (-29,-29,-82)
ところで、上のほうで書いたんだけど、まだ解決しないので・・・

findのfieldsのなかでCountとかSumを使うと
戻り値のモデル名のところが「0」になっちゃうよね。

http://cakephp.blog16.jp/index.php/2009/03/06/p88
このページを参考に、
COUNT(*) AS Post__countみたいに指定してみたんだけど、
うまくPostに入ってくれない・・・

なにか良い方法ないかしら?
202 : nobodyさん - 2009/04/12(日) 10:21:50 ID:??? (-26,-23,-1)
>>198
pagenateなんか自前でやってるわ
203 : nobodyさん - 2009/04/12(日) 10:27:59 ID:??? (-13,-30,-134)
paginateを一々指定したくないと言うならこんな方法も考えられる
1.app_controllerでmyPaginate()を定義、paginate()をラップ
2.myPaginate()内でModel->paginateParamを取得する
3.各モデルにpaginateParamを定義

ただ、paginateのパラメータはモデル毎じゃなくてコントローラ毎に発生するものだと思うけどね。
もしやりたいというならこういう設計もあると言う事で。
204 : nobodyさん - 2009/04/12(日) 10:44:26 ID:??? (+26,+29,-48)
>>202
用意されてるのに、わざわざ自前でやる理由を知りたいなぁ。
もしかして、ログイン処理とかも自前?

>>203
>>paginateのパラメータはモデル毎じゃなくてコントローラ毎に発生するものだと思うけどね。
同意見ですね。
ほかで使いまわすことも少ないだろうし。
205 : 203 - 2009/04/12(日) 11:25:52 ID:??? (+30,+27,-96)
やるとしても、myPaginate()で
orderとかlimitが指定されていなかった場合に自動的に補完する、と言う程度が良いと思う。
コントローラ側から上書き可能な形にしておけば、やって損と言う事は無いと思う。

あまりコード量は減らないし構造が複雑化するからお勧めしないけどね。
210 : nobodyさん - 2009/04/13(月) 07:36:02 ID:??? (+27,+29,-15)
FW使うのが目的になってるよなw
211 : nobodyさん - 2009/04/13(月) 07:47:40 ID:??? (+20,+19,-70)
AuthもFWだけどね
MVCの仕組みだけと言うべきかな

Authは最新版なら有用だと思う
というか自前でセキュリティホールの無い認証機構作るとかめんどくさすぎるから
212 : nobodyさん - 2009/04/13(月) 09:32:33 ID:??? (+31,+29,-15)
>>210
それは誰に対していってるの?
全部Cakeの機能で賄おうとしてる人に対して?

私は >>211 に同意です。
213 : nobodyさん - 2009/04/13(月) 12:58:49 ID:??? (-28,-30,-206)
>>209

> authコンポーネントは苦手。

その気持ち分かります。
以前、Authコンポを使って、グループ毎にログイン後のアクセス画面を変えるというのを作ったけど、
loginRedirectプロパティを書き換えたページ振り分けが上手くいかなくて苦しんだ。
※最初のユーザをログアウトして、別のユーザでログインすると何故か最初のユーザの画面が表示されてしまう...

結局、loginRedirectのプロパティ値は、Sessionに含まれ続けるという事を知って、
ログアウト毎にセッションをクリアすることで上手くいくと思ったのだが、上手く行かず...
結局、autoRedirectしないようにして、グループ情報を確認後に改めてリダイレクトするようにして対応した...orz

214 : nobodyさん - 2009/04/13(月) 13:49:00 ID:??? (+16,+15,-37)
皆さんはCakePHPのパフォーマンスをどんな具合で上げていきますか。
特にパラメータによって頻繁に情報が変わる検索ページとか。
217 : 216 - 2009/04/13(月) 18:54:34 ID:??? (+26,+28,-17)
とりあえずほっといてチュートリアル進めているうちに自己解決しました。
.htaccessがコピーされてないだけだった('A`)
218 : nobodyさん - 2009/04/13(月) 22:52:24 ID:??? (+34,+30,-229)
>>210
わかる。フレームワークの機能をどうしても利用しようとして、少しのことでもこだわり過ぎて
逆に効率が悪くなるという。

>>213
気持ちわかってくれてうれしい。同じ人もいたんだ。絶対否定されると思ったけど^^

>>214
自分は3つくらいのサイトをcakephpで作ったけど、ひたすらプラグインにまとめてデザイン無しのページを作り、
それを元にして新たなサイトを構築していってる。
プラグインにまとめまくると普通のコントローラーやビューがごちゃつかないのでいいよ。
特にユーザーログイン、画像アップデート、プロフィールアップデートなどをプラグイン化しておくと、
新たなサイト作ったときもその機能を作らなくても良いので楽。

以前このスレで 慣れるとビヘイビアが多くなる って人がいたけど、今は自分もビヘイビアを多く使うようになってきた。
219 : nobodyさん - 2009/04/13(月) 23:01:54 ID:??? (+3,-5,-112)
>>218
プラグイン多用しているということで聞きたいのですが、
たとえばユーザー管理の仕組みをUserプラグインにまとめると、
モデル名にプラグイン名がついて、UserUserモデルになってしまって不恰好なのですが、
どうされてますか?
他にもCommentプラグインのCommentCommentモデルなど・・・
とにかくモデル名が長くなってしまって困っているんですが・・・

あと、そのCake製のサイト見てみたいです。
・・・2chで晒すのはアレですかね?
221 : nobodyさん - 2009/04/14(火) 12:23:38 ID:??? (-12,-30,-267)
CakePHPを始めたばかりです。
CakePHP 1.2.2.8120とsqlite3を使っています。
インストールには成功したのですが、チュートリアルを
http://book.cakephp.org/ja/view/330/
まで進めた後にインストールの確認ページを見ると、
Cake is NOT able to connect to the database.
というエラーがでてしまい、困っています。
/posts/index を見ても、
Error: Database table posts for model Post was not found.
と出てしまいます。
database.phpの設定は以下の通りです。
var $default = array(
         'driver' => 'sqlite'
         'connect' => 'sqlite_open',
         'persistent' => false,
         'host' => 'localhost',
         'login' => '',
         'password' => '',
         'database' => 'cake.db',
         'prefix' => '',
         'encoding' => 'utf8'
     );
どうかよろしくお願いします。
223 : nobodyさん - 2009/04/14(火) 18:56:14 ID:??? (+26,+28,-56)
>>219
ug プラグインにしてる。で、あとはroutes.php でルーティング。
これだとパスとか関係ないのでイイと思う。逆にルーティングを使わないと
パス名長すぎてかっこわるくなるね。
226 : 221 - 2009/04/15(水) 12:57:21 ID:??? (+18,+29,-14)
>>225
とりあえず去年の2月の時期で未サポートという情報は見つけました。
手を抜かずにmysqlを使うことにします。
お騒がせいたしました。
227 : nobodyさん - 2009/04/15(水) 13:53:06 ID:??? (+22,+30,+0)
228 : nobodyさん - 2009/04/15(水) 15:27:53 ID:??? (+23,+17,-54)
>>227
機能をPHPモジュールで実装して
PHPのコンパイルオプションで選ぶようにするとか

あるいはyumのパッケージをAPIごとに分けて欲しいやつだけ入れるとか

そういう方法で対処するのが一番楽で高機能だと思うがな
229 : nobodyさん - 2009/04/16(木) 14:44:00 ID:??? (-28,-26,-49)
もういや、以前NetBeansへのCakePHPフレームワーク対応の
話があったと思うんだけど、どうなったの?
230 : nobodyさん - 2009/04/16(木) 21:11:24 ID:??? (+15,+27,-1)
もういや!
231 : nobodyさん - 2009/04/16(木) 23:13:26 ID:??? (-27,-30,-92)
saveallしたあとで、バリデートのエラーを拾えないんですが
やり方を知っている方がいたら教えてください?

コントロール内で

$this -> Model -> saveall($data,array('validate' => 'first');

とした後、

$error = $this -> Model -> invalidFields();

としても、バリデートがエラーになっても$errorが空のままです。
saveにすると問題ないのですが、何故なんでしょうか?
saveallでバリデートエラーを拾いたい場合は、やっぱり関連する
各モデルごとにバリデートを繰り返しあてるしかないんでしょうか?
232 : nobodyさん - 2009/04/17(金) 15:00:20 ID:??? (+17,+29,+0)
もういややわ。
234 : nobodyさん - 2009/04/21(火) 15:14:47 ID:??? (+27,+29,-38)
実践本買ったけど、bakeばっかり使っててわかりづらい。
ちょっと前の勉強会だとbake使ってる人はほとんどいなかったのに、最近は違うのか?
235 : nobodyさん - 2009/04/21(火) 15:18:56 ID:??? (+27,+29,-25)
bakeの何が分かり辛いんだ
というかモデル追加するたびに手書きでコントローラとか書いてたのか?
236 : nobodyさん - 2009/04/21(火) 15:24:47 ID:??? (+27,+29,-17)
普段と違う開発手法だから慣れない感じ。
もちろん読みこめば何をやってるのかわかるんだけどさ。
自分は基本的にコードは手書きだよ。
237 : nobodyさん - 2009/04/21(火) 15:26:55 ID:??? (+27,+29,-18)
基本的な使い方知るくらい5分かかるかどうかレベルだろ
238 : nobodyさん - 2009/04/21(火) 15:31:48 ID:??? (+32,+29,-29)
いや、だからbakeで何をやってるかはわかるって。
ただ、普段の開発手法と違うから読みにくいというだけで。

普段Linux環境だからWindows環境で書かれてるのがわかりづらいとか、
そういうくらいのレベルの話だよ。
239 : nobodyさん - 2009/04/21(火) 16:07:29 ID:??? (-5,-3,-19)
bakeにmvcひとつひとつ選択しないで
ぜんぶdefaultで、とにかく作成しちゃうモードがあればいいなとおもう
240 : nobodyさん - 2009/04/21(火) 16:16:48 ID:??? (+7,+19,+0)
あるじゃん
241 : nobodyさん - 2009/04/21(火) 17:49:53 ID:JXH2p/YI (+29,+29,-39)
実践本、俺はbake使い過ぎてわからんというよりは、
scaffoldに固執しすぎてバッドハック的な事をしてるのが気になった。
cakeの仕様の変わりっぷりを考えると、後々まで使える手法じゃない可能性が高いし
244 : nobodyさん - 2009/04/21(火) 21:03:12 ID:??? (-26,-29,-127)
App::importに対してunimport的なものってあるの?

そもそもimportで読み込んだコンポーネントってstartup()とか動作するのかな?
単にimportを呼び出したスコープ内でメソッドが使えるだけ?
245 : nobodyさん - 2009/04/21(火) 21:19:09 ID:??? (-11,-9,-22)
コントローラからの読み込み以外では適宜startup呼ばないとだめなんじゃない?
246 : nobodyさん - 2009/04/21(火) 21:38:59 ID:??? (-27,-30,-121)
そのようだった。
initialize()すら呼ばれないね。

コンポーネント内でApp::importした場合って、
initialize(&$controller)の$controllerにセットされないよね?
コンポーネント内ではimport出来ないの?
248 : nobodyさん - 2009/04/21(火) 23:44:48 ID:??? (-26,-29,-85)
実践本3,150円(税込)が
Amazonで2,740円(=2,400+340)の中古本が出たので即購入。ラッキー
(会社で新品書籍を購入すると10%offという人多いのかなあ?うらやましい)
249 : nobodyさん - 2009/04/22(水) 00:27:07 ID:??? (+27,+29,-27)
会社ってか昔の客先は組合の購買で買うと10%OFFだったな
協力会社の人も含めて
250 : nobodyさん - 2009/04/22(水) 04:16:17 ID:??? (+23,+29,-51)
>>248
10%オフって・・・。
会社通して仕事の本買えば会社は全額経費になるのにひどい話だな。

俺が以前いた会社は全額経費で落としてくれた。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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