【PHP】フレームワーク CakePHP 15ホール目【v2.2】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2012/12/04(火) 13:06:36.87ID:ExCLhBiPCakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう
※他フレームワークとの比較等はスレ違いです
■本家
http://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
github - cakephp
http://github.com/cakephp
the Bakery
http://bakery.cakephp.org/
CakeQs
http://cakeqs.org/
Issue
http://cakephp.lighthouseapp.com/dashboard
CheatSheet[1.2] (PDF)
http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf
■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
[2.x] http://book.cakephp.org/2.0/ja/index.html
[1.3] http://book.cakephp.org/ja
前スレ
【PHP】フレームワーク CakePHP 14ホール目【v2.1】
http://kohada.2ch.net/test/read.cgi/php/1335859124/
0079nobodyさん
2013/01/08(火) 16:57:43.92ID:wT0DGdoq0080nobodyさん
2013/01/08(火) 16:58:37.29ID:???0081nobodyさん
2013/01/09(水) 14:58:19.50ID:FsynrIWDroutes.phpで、携帯サイトのみ以下の一文を付けたいのですが、
routesではhelperも使えないので判別に困っています。
helperが使えたらktaiライブラリを使っているので一発なのですが…
なにかいい手はないでしょうか? お願いします。
Router::connectNamed(true, array('argSeparator' => '~'));
0082nobodyさん
2013/01/09(水) 15:20:28.91ID:???routes.phpにユーザーエージェントを判別するコード書いて
PC以外のアクセスにはconnectNamed指定したら良いんじゃないか?
0083nobodyさん
2013/01/10(木) 06:18:15.98ID:???アソシエーションでconditionsを使う場合と使わない場合があります。
(例えば、非公開の投稿件数を表示する・しない 場合など)
今はコントローラーで、
一旦unbindModelをしてbindModelで再定義しているのですが、
モデル内で分岐させる方法はないでしょうか?
0084nobodyさん
2013/01/10(木) 12:08:13.10ID:???んで、いるアソシエーションのみcontainで指定して引っ張る
0085nobodyさん
2013/01/10(木) 23:33:47.63ID:???それfind()に渡すパラメーターで表現できないの?
0086nobodyさん
2013/01/11(金) 00:55:23.76ID:???それでも便利じゃん
0088nobodyさん
2013/01/11(金) 05:59:02.49ID:???それだけじゃないの?
008983
2013/01/11(金) 11:42:41.15ID:???それすると書く量や修正箇所が増えるんですよね・・。
>>85
自分はバーチャルフィールドにしているので、
find側でアソシエーションの条件は決められないっぽいです。
それができるとかなり便利なんですけどね。
>>88
どちらかというとその場限りですね。
「非公開の投稿件数を表示」って、管理画面で確認する程度ですし。
0090nobodyさん
2013/01/11(金) 12:39:05.49ID:???バーチャルフィールドって、なんか敬遠したい雰囲気だったから使ったこと無いけど、
調べたらconditionsには使えるみたいだから
contains => array(Model => array(conditions))にも使えるんじゃないの?ダメなの?
009283
2013/01/11(金) 17:49:51.59ID:???できました!コードが間違っていたようです。
containsではなくて、containでした。
対象のモデルに
var $actsAs = array('Containable');
を追加して、
findに'contain' => array('Posts' => array('conditions' => array('Posts.status' => 1))),
を追加すると、バーチャルフィールドでもconditionsが効きました。
containを教えていただいた方、ありがとうございました。
0093nobodyさん
2013/01/11(金) 19:58:49.04ID:???Containable使ってなかったのか。
これはもう必ず使っても良いくらいのビヘイビアだよ。
Modelのrecursiveプロパティと、やることが被ってるから、そこは注意が必要だけど。
class AppModel extends Model {
var $recursive = -1;
var $actsAs = array('Containable');
}
具体的には必ずContainable使うなら$recursiveはbelongsToすら取らない設定にするのがいいけど、
bakeして作った画面はbelognsToは来ること想定してるから、
containsにちゃんと書かないといけない。
その代わりアクション毎に指定したモデルだけを取れるから、無駄なSQL発行されない。
containだったか。他がconditions, fieldsってキーだからついcontainsって書いちゃうんだよな。
0094nobodyさん
2013/01/16(水) 11:49:21.14ID:???本家のほうにあったなんて
検索で1番上に表示されるcakephp.jpは害
0096nobodyさん
2013/01/16(水) 12:05:59.61ID:???今日からcakephpの勉強をしたいと思います
0097nobodyさん
2013/01/16(水) 12:55:44.13ID:???英語の公式以外で入手できる情報は基本ないと思ったほうが良い
ぐぐっても出てくるのは古いゴミみたいな情報ばかり
日本語なら、なるべく新しい本を買えばまだましなのかな、多分2冊ぐらいしかないはず
0098nobodyさん
2013/01/16(水) 13:48:36.02ID:???英語のマニュアルと、つまったらソース読むのが一番速い上に勉強になる
0099nobodyさん
2013/01/16(水) 14:37:13.70ID:???Unofficialてのがあるけど、質問してもレスつかんかった
0100nobodyさん
2013/01/16(水) 14:45:29.67ID:???激しく同意
あそこは潰したほうが CakePHP のためになる
0101nobodyさん
2013/01/16(水) 14:49:37.64ID:???自分用に何ページも翻訳あるんでよかったら使ってもらおうと思ったんだけど
糞めんどうくさいんでやめた。
そんな人結構たくさんいると思う。
チェック機構すら無い簡単過ぎる更新もどうかと思うけど、
今みたいな sphinx 形式に整形して github で pull request するなんて、
ほんの一握りのマニアしかやりたいとは思わないよ。
0102nobodyさん
2013/01/16(水) 14:53:30.56ID:???一応こちらが公式のQ&Aサイト。
http://ask.cakephp.org/
ただし、日本語で質問しても反応は絶望的だと思う。
もはやプログラマのスキルとして、つねに英語力が
プログラミング能力より先立つんじゃないかとおもうわ。
0104nobodyさん
2013/01/16(水) 16:14:04.46ID:???あとベースとなる英語も、ユーザーベースで書いてるから、追従は大変。
翻訳する意欲のある人は、翻訳をすることで英語力が身につき、
もう英語読めばよくね?となってしまうとか聞いた。
0105nobodyさん
2013/01/16(水) 16:40:43.25ID:???お金くれれば俺が翻訳やってやるのにな
ただではやらん
0107nobodyさん
2013/01/16(水) 16:54:17.30ID:???100円ぐらいで売れてる書籍結構あるよ
0108nobodyさん
2013/01/17(木) 12:47:53.30ID:???まだ50%程度か。
未翻訳のページもそのままリンク張っておいてくれたらいいのに。。。
文句言う筋合いじゃないけど、なんだか細かい所でイラッと来るわ。
0109nobodyさん
2013/01/17(木) 13:18:10.37ID:???管理できないのであれば
0110nobodyさん
2013/01/17(木) 13:20:13.24ID:???0111nobodyさん
2013/01/17(木) 13:35:14.15ID:???翻訳サイトは cakephp.jp じゃなくて、本家 cakephp.org の一部。
なので、閉鎖とかじゃなくて単にページのHTML化の問題。
>>110
とりあえず cakephp.jp のフォーラムに書き込めばいいと思う。
0112nobodyさん
2013/01/17(木) 14:10:39.39ID:???本家のask.cakephp.orgが1.3 と2の間くらいで、確か出来たけど、
あれ完成度悪いと思う。
個人的にも本家が出来たからあれに移行してやっていこうって気持ちにはなれなかった。
そして何故かユーザーは多いはずなのに両方が過疎る残念な状況に。
0113nobodyさん
2013/01/17(木) 14:19:47.41ID:???駄目システムでも流行ることはあるとは言え、やはり大事
0114nobodyさん
2013/01/17(木) 14:41:06.72ID:???おまえがやれとしか言いようが無いわ
0115nobodyさん
2013/01/17(木) 14:44:36.18ID:???「俺はオープンソースに貢献してます」って肩書きに書けるもんな
楽だよな
0116nobodyさん
2013/01/17(木) 14:56:25.96ID:???文句言う筋合いじゃないけどって書いてるでしょ
0117nobodyさん
2013/01/17(木) 14:59:24.33ID:???0118nobodyさん
2013/01/17(木) 15:05:22.17ID:???0119nobodyさん
2013/01/17(木) 15:55:31.40ID:???0120nobodyさん
2013/01/17(木) 15:59:23.96ID:???誰が運営してるのか良く分からんけど、たぶんもうCakePHPやってないんかね。
想像だけど、CakePHPから離れちゃって、
でもまるっと消しちゃうには、過去ログも溜まってるから、放置状態なんかね。
0121nobodyさん
2013/01/17(木) 16:12:52.88ID:???Cake以外の言語・ツールの説明サイトが少なくなった印象
0123nobodyさん
2013/01/17(木) 19:18:07.19ID:???0124nobodyさん
2013/01/17(木) 19:21:42.24ID:???自分の質問しか引っかからない時の絶望感
0125nobodyさん
2013/01/17(木) 21:14:29.88ID:???0126nobodyさん
2013/01/17(木) 21:29:29.93ID:???0127nobodyさん
2013/01/18(金) 08:59:44.64ID:???0128nobodyさん
2013/01/18(金) 10:03:12.31ID:???0130nobodyさん
2013/01/18(金) 12:44:57.61ID:???0131nobodyさん
2013/01/18(金) 13:38:03.04ID:???0132nobodyさん
2013/01/18(金) 14:17:52.25ID:???0133nobodyさん
2013/01/18(金) 15:57:43.37ID:???0134nobodyさん
2013/01/19(土) 00:43:10.36ID:???なんだかんだ言ってもphpはweb系なら使われてる言語で、
そのphpのメジャーなフレームワークなんだし。
0135nobodyさん
2013/01/19(土) 19:57:46.56ID:???が
なんとなくステマに認識された
0136nobodyさん
2013/01/20(日) 14:00:47.28ID:???無くなっていいよ。
なんだあのキモいActiveRecordもどきはw
0137nobodyさん
2013/01/20(日) 14:13:40.58ID:???0138nobodyさん
2013/01/20(日) 16:52:16.21ID:???0139nobodyさん
2013/01/20(日) 19:53:37.64ID:???0140nobodyさん
2013/01/20(日) 20:36:10.12ID:???0141nobodyさん
2013/01/21(月) 00:18:04.57ID:???って解釈もできるけど、だいたい登録制の掲示板って
常連しか集まらなくなって、新参が寄り付きにくいんだよね。
0142nobodyさん
2013/01/21(月) 03:13:12.94ID:???0143nobodyさん
2013/01/21(月) 04:53:21.31ID:???管理者が荒らし減らしたいだけのうんこシステム
0144nobodyさん
2013/01/21(月) 10:23:14.60ID:???ログイン出来るところもあるけど、
だいたいはログインした後に会員登録するという
二重にめんどくさい仕様になってるんだよな
0145nobodyさん
2013/01/21(月) 13:22:07.22ID:???モデルのオブジェクト(の配列)返さなきゃ駄目だろ。
これ作った奴は全くもってオブジェクト指向ってものを理解してねぇんだな。
クソだクソ!
0146nobodyさん
2013/01/21(月) 13:33:29.21ID:???0147nobodyさん
2013/01/21(月) 13:53:46.54ID:???まったくうろ覚えだが
0148nobodyさん
2013/01/21(月) 14:01:12.72ID:???0149nobodyさん
2013/01/21(月) 14:19:09.21ID:???もう既に議論されまくってるよハゲ。
PHPのソース解析して実際にパフォーマンス計測した結果
配列にしておくべきと結論したんだよクズ。
CakePHP3になればデフォルトで選択可能になるみたいだがなクソムシ。
今はオブジェクト化ラッパーのプラグイン使えやウンコ。
0151nobodyさん
2013/01/21(月) 21:52:08.56ID:???自分で試せるよ。データベースの返り値を模した配列とオブジェクトで試してみ。
0152nobodyさん
2013/01/21(月) 22:54:41.50ID:???配列の方がコスト低いのは分かるけどさ。
PHPのほかのフレームワークだと、オブジェクトにしてるのもあるから、
選択肢としてまったく無しじゃないと思うんだ。
そのなか、何で配列で行くことにしたのかなと思ってん。
0154nobodyさん
2013/01/22(火) 08:01:00.25ID:???そもそもオブジェクトである必然性は全くないし。
0155nobodyさん
2013/01/22(火) 11:06:56.11ID:???わざわざ配列の方を採用しているところに「なんでオブジェクトにしないの?」
ってお前の主張を押し付けるのはおかしいだろ
0156nobodyさん
2013/01/22(火) 11:45:09.75ID:???議論があるってことは両方にメリット・デメリットがあるってことだろ。
配列を採用するフレームワークもあるし、オブジェクトを採用するフレームワークもある。
コストが低いだけで、配列がベストって状況じゃないから、
理解を深めるために、過去にあった議論を見たいと思って何かおかしいのか?
0157nobodyさん
2013/01/22(火) 13:18:25.40ID:???0158nobodyさん
2013/01/22(火) 13:22:15.41ID:???0159nobodyさん
2013/01/22(火) 13:22:42.68ID:nr2JMr7ehttp://gp48.net
0161nobodyさん
2013/01/22(火) 14:04:59.92ID:???事と何が問題なんだ?
オブジェクト指向だからって絶対その通りしなきゃいけない決まりなんて無いだろ。
お前は頭が硬すぎるんだよ
0162nobodyさん
2013/01/22(火) 14:53:37.91ID:???findの戻り値がオブジェクトだったら、そのオブジェクトは具体的にどんなメソッドを持っていて
配列よりどう便利なの?
0163nobodyさん
2013/01/22(火) 16:45:51.69ID:???戻り値はオブジェクトの場合とオブジェクトの配列の場合があるだろ。
オブジェクトの利点だが、人に聞かなきゃ分からんの?
Fat ModelとかDRYの原則とか理解してれば分かるはずなんだがねぇ。
0165nobodyさん
2013/01/22(火) 16:57:32.71ID:???なるほどねえ
いまだとafterFindでやらざるを得ないような処理をEntityオブジェクトでやらせたり出来るって感じかな
多分便利なんだろうな
0166nobodyさん
2013/01/22(火) 20:52:44.17ID:???ほれ
http://www.1x1.jp/blog/2006/09/cakephp_array_based_ar.html
ただ、もっと詳しいエントリがあったはずなんだが見つけられなかった
確か開発者のブログだったんだけど、何年も前のことで忘れてしまったわ
0167nobodyさん
2013/01/22(火) 21:37:05.39ID:???そもそもPHPって時点でとてつもないデメリットがあるのに
0168nobodyさん
2013/01/22(火) 22:04:06.66ID:???0169nobodyさん
2013/01/23(水) 10:42:04.53ID:???http://book.cakephp.org/2.0/_downloads/en/CakePHPCookbook.pdf
の 8ページ目、
public function view($id=null) {
と書くべきところを、
public function view($id) {
と書いてしまいましたが、動作するように思われます。
「=null」にはどのような意味があるのでしょうか?
0170nobodyさん
2013/01/23(水) 11:07:55.88ID:???0171nobodyさん
2013/01/23(水) 13:24:10.39ID:???0172nobodyさん
2013/01/23(水) 13:41:16.62ID:???知らなければ分かりにくいし、検索しにくい文法じゃないか。
http://php.net/manual/ja/functions.arguments.php#functions.arguments.default
0173nobodyさん
2013/01/23(水) 14:11:39.31ID:???それはセンスが無いかと
関数の引数の所に=が付いてるのは何でかな?と思ったら「関数」について調べる
それだけのことだよ
0174nobodyさん
2013/01/23(水) 14:14:57.82ID:???呆れるほど基本的なことがわかってない時点で読む必要ありありなんですが
0175nobodyさん
2013/01/23(水) 17:28:27.81ID:???センスといえばそうだけど、思い当たらなかった人に、
ドキュメントのURLを貼ってやってもいいと思うんだ。
まぁphpのドキュメントはかなり充実してるから、大抵の事はあたりをつけて読めば書いてあるし、
読めばいいとは思うけど、それも知っていてこそ、だと思うんだよね。
0176nobodyさん
2013/01/23(水) 17:46:32.01ID:???せっかくゆとり教育終わったのにゆとりの再生産したいのかw
0177nobodyさん
2013/01/23(水) 18:05:08.20ID:???Cakeとかフレームワーク使ったりする?
例えば、テーブル1つのメールフォームとかアクセスカウンターとか。
ちょっとしたPHP+MySQLを使うとき、みんなどうしているのかな?と思って。
0178nobodyさん
2013/01/23(水) 18:49:28.47ID:???さすがにそれでは使わねえなw
0179nobodyさん
2013/01/23(水) 19:40:37.06ID:???というかアクセスカウンターを作る状況がもう想像つかないけど。
テーブルあるならメールフォームには使うかな。
バリデーター使いたいし、入力内容をDBに入れるなら、
見たりする管理画面的なものも入ってきそうだし。
長く稼動すれば、検索したいだの、対応状況を付けたいだの、
要望が出てきそうだし、最初は極小規模でも、
なんだかんだ増えるんじゃないかと思った。
■ このスレッドは過去ログ倉庫に格納されています