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

【PHP】フレームワーク CakePHP 8ホール目【1.3】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2010/03/18(木) 10:00:59ID:6+kHM8kH
CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです
CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう

※sage推奨
テンプレは>>1-5くらい

■本家
http://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
the Bakery
http://bakery.cakephp.org/
CakeQs
http://cakeqs.org/
CheatSheet (PDF)
http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf
github - cakephp
http://github.com/cakephp

■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
http://book.cakephp.org/ja
0002nobodyさん2010/03/18(木) 10:01:29ID:???
■1.2系
CakePHP1.2系のダウンロード
http://github.com/cakephp/cakephp1x/archives/1.2
CakePHP 1.2.x API
http://api12.cakephp.org/

■1.3系
CakePHP1.3系のダウンロード
http://github.com/cakephp/cakephp1x/archives/1.3
CakePHP 1.3.x API
http://api13.cakephp.org/
1.2から1.3への移行ガイド
http://book.cakephp.org/ja/view/1561/
CakePHP 1.3の新機能
http://book.cakephp.org/ja/view/1572/

■Lithium(li3) PHP5.3+
http://rad-dev.org/lithium/
0003nobodyさん2010/03/18(木) 10:01:49ID:???
■過去スレ
【PHP】フレームワーク CakePHP 7ホール目【v1.2】
http://pc11.2ch.net/test/read.cgi/php/1251789126/
【PHP】フレームワーク CakePHP 6ホール目【v1.2】
http://pc11.2ch.net/test/read.cgi/php/1236563737/
【PHP】フレームワーク CakePHP 5ホール目【v1.2】
http://pc11.2ch.net/test/read.cgi/php/1229669539/
【PHP】フレームワーク CakePHP 4ホール目【v1.2】
http://pc11.2ch.net/test/read.cgi/php/1213892680/
【PHP】フレームワーク CakePHP 3ホール目【本命】
http://pc11.2ch.net/test/read.cgi/php/1205475360/
【PHP】フレームワーク CakePHP 2ホール目
http://pc11.2ch.net/test/read.cgi/php/1194976228/
【PHP】フレームワーク CakePHP
http://pc11.2ch.net/test/read.cgi/php/1163850802/


■関連スレ
【PHP】PHPフレームワーク総合スレ14
http://pc11.2ch.net/test/read.cgi/php/1253912143/
【PHP】下らねぇ質問はID出して書き込みやがれ 94
http://pc11.2ch.net/test/read.cgi/php/1268835461/
symfony PHPフレームワークpart2
http://pc11.2ch.net/test/read.cgi/php/1268753684/
[PHP][フレームワーク]CodeIgniterスレ
http://pc11.2ch.net/test/read.cgi/php/1177683436/
【PHP】Ethna part.2【国産フレームワーク】
http://pc11.2ch.net/test/read.cgi/php/1186096518/
【PHP】フレームワークMapleに舌鼓
http://pc11.2ch.net/test/read.cgi/php/1122105465/
0004nobodyさん2010/03/18(木) 10:02:03ID:???
■その他いろいろ
CakePHPカンファレンス東京(2008)
http://conference.cakephp.jp/
CakeMatsuriTokyo2009
http://matsuri.cakephp.jp/

連載:CakePHPで高速Webアプリ開発|gihyo.jp … 技術評論社
http://gihyo.jp/dev/serial/01/cakephp
CakePHP 規約ワードメーカー WordMaker for CakePHP Conventions
ttp://www.cpa-lab.com/tech2/inflects/
Free CakePHP Book (Matt Curry and Mark Story)
http://www.pseudocoder.com/free-cakephp-book/
あとこのへんとか(初心者向けTIPS)
http://www.avatarfinancial.com/pages/cake/
CakePHP Note
http://www.garacter.com/notes/CakePHP+Note/ni:5
CakePHPを使ったMVC設計のベストプラクティス - Sooey
ttp://www.sooey.com/journal/2008/03/26/717/
Qdmail(日本語メールコンポーネントとして利用可能なライブラリ)
ttp://hal456.net/qdmail/
10分で作るCakePHPアプリ for Windows
http://p4life.jp/cake/

■ver1.1用
CakePHP プログラマーズ リファレンスガイド
http://cakephp.jp/doc/
CakePHPフレームワークによる快速WEB開発 |codezine
http://codezine.jp/a/article/aid/670.aspx
0005nobodyさん2010/03/18(木) 10:02:22ID:???
■関連書籍
・ver1.2系
CakePHP1.2ガイドブック
http://www.amazon.co.jp/dp/4839932468/
CakePHPによる実践Webアプリケーション開発
http://www.amazon.co.jp/dp/4839930651/
オープンソース徹底活用 CakePHPによるWebアプリケーション開発
http://www.amazon.co.jp/dp/4798022225/
CakePHP ポケットリファレンス※ver1.2beta
http://www.amazon.co.jp/dp/4774135038
CakePHP徹底入門
http://www.amazon.co.jp/dp/479811717X
PHPで作る携帯サイトデベロッパーズガイド
http://www.amazon.co.jp/dp/4798024767/
・ver1.1系
CakePHPガイドブック
http://www.amazon.co.jp/dp/4839924317
Fast CakePHP
http://www.amazon.co.jp/dp/4774133418
0006nobodyさん2010/03/18(木) 10:04:01ID:???
テンプレらしきものは以上
補足があればどうぞ

Have a Nice Cooking !
> cake bake all User
0007nobodyさん2010/03/18(木) 10:06:31ID:???
>>1
お疲れサマ!
0008nobodyさん2010/03/18(木) 13:31:33ID:???
>>1

そろそろ1.3への移行を考えなきゃいけない時期かね
1.1→1.2よりかは1.2→1.3の方がやるべきことは少なそうだけど、1.3の新機能のメリットはそこまで大きく感じない・・・
0009nobodyさん2010/03/18(木) 13:55:10ID:???
>>8
試しに移行を進めてるけど、俺のソースだと結構直すとこいっぱいあったな。
例えばhtmlヘルパーのオプション設定とか、
ちぐはぐだなと思ってた部分はだいぶ合理化されてるから気分的にはすっきりしたけど。
0010nobodyさん2010/03/19(金) 13:48:38ID:???
core.php を 0 にして
cakephp の debug を
$_SESSION['Auth']['User']['email'] = 'admin@hoge.com';
でログインしているときのみ、 2にしたいんだけど、どうすればいいかな。
beforeFilter や beforeRenderでやってもだめみたい。

core.php を 0 にしちゃうと、コントローラーで個別に Configure::write('debug', 2); をやっても
エラーがちゃんと表示されないんだよね。
0011nobodyさん2010/03/19(金) 14:04:16ID:???
>>10
エラーって何だろ?
ふつうにbeforeFilterやbeforeRenderで変えられるよdebugは

>>10の例ならbootstrap.phpで変えても良いけど
0012nobodyさん2010/03/19(金) 17:10:00ID:???
>>11
ありがとう。core.php内でIPアドレスでチェックすることにして解決しました。
0013nobodyさん2010/03/19(金) 19:16:46ID:qSSo5h5k
すごい長いですが失礼します。

まず、やりたいことなのですが。
DBconsultantsのmetroフィールドに01,03,11,22,33,34が入っていたとして
この中のどれかを含んでいたらconsultants全てのデータを取ってきたいのです


view
1~47の都道府県がチェックボックスになっています。
<?php e($form->checkbox('Page.metro.'.$prefectureHashModel['Prefecture']['pre_id']))?>

0014nobodyさん2010/03/19(金) 19:18:17ID:qSSo5h5k
controller

// チェックが入った物だけを取得し、配列に格納
$metroHash = array();
foreach($this->data['Page']['metro'] as $key => $value){
if($value == 1){
$metroHash[] = 'metro Like ' . "%".$key."% ";
}
}

// 配列を文字列に変換
$metroHash = implode(' or ',$metroHash);

$consultantHashModelArray = $this->Consultant->query('SELECT * FROM `consultants` WHERE ' .$metroHash);
ここでこのSQL文を使えばできるのですが、今回やりたいのは下のpaginatorででして
どのようにすれば上のSQL文と同じ処理をしてくれるかがわかりませんので教えて頂けないでしょうか?


$conditionsHash = array();
$conditionsHash['metoro LIKE ?'] = なんたら?
$this->paginate = array('Consultant' => array('conditions' => $conditionsHash,
'limit' => 10,
'order' => array('consultant_id' => 'DESC'),
'page' => 1));
0015nobodyさん2010/03/19(金) 19:27:50ID:???
すみませんCakeのバージョンは1.3です。
0016nobodyさん2010/03/19(金) 20:20:26ID:???
PEARなどを使うとき、Cakeのコアクラスと名前が衝突してしまい、うまく動作しないことがあるのですが、
みなさんはどのように解決されていますか?

http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=1153&forum=3&post_id=2359

こちらではPEAR側のソースを書き換える方法が提示されていますが、
できればソースの書き換えはしたくないです。

そもそも、コアクラスとか定数にprefixがついてないのっていろいろと問題あるとおもうのですが・・・どうなんでしょう。
0017nobodyさん2010/03/19(金) 23:42:18ID:???
>>13
モデル名からなにやりたいのか想像つきにくいよ。
たぶんconsultants_metorosテーブルを作ってHABTMにするのが簡単なんじゃないかなと思うけど。
0018nobodyさん2010/03/20(土) 16:12:27ID:???
javascriptでもMVC
ttp://code.google.com/p/jsigniter/
0019nobodyさん2010/03/20(土) 19:57:19ID:???
cakephp1.2.6+xamppで、http://3d.rokujyou.com/cake/index.htmlを動かそうとしているのですが、

Missing Controller
Error: UrllistController could not be found.
Error: Create the class UrllistController below in file: app\controllers\urllist_controller.php

というエラーが出てしまいます。
urllists_controller.phpをurllist_controller.phpに変更しても同じでした。
何か他に設定すべきことがあるのでしょうか?
0020nobodyさん2010/03/20(土) 20:31:58ID:???
>>19
Class名は変えたの?
0021nobodyさん2010/03/20(土) 22:31:07ID:???
初歩的な質問で申し訳ございません
チュートリアルで分からない部分があります。

コントローラとビューについて
ビューの画面に遷移しようとするとコントローラのメソッドが呼び出され
その結果、戻り値を反映したビューがブラウザに表示されると解釈していました。

しかし、editファンクション内の処理で行われるPostデータをsaveする命令は
ビューが表示された後にPost送信するときに実行されるように見えます。
この処理の流れがよく分かりません。

恐縮ですが、どなたか分かる方がいればご教授お願いします。
0022nobodyさん2010/03/20(土) 22:50:56ID:???
>>21
まず基本から。
ひとつのリクエストは、Controllerが(必要に応じてmodelとやりとりしながら)処理し、最終的にviewを表示して終了する

で、addやeditアクションについては、[1]フォームを表示する[2]postデータを保存する、のふたつのリクエストを同じアクションで行っているにすぎない
postされたデータがあるリクエストであれば[2]を、なければ[1]を行っている
それぞれ別のリクエスト
0023nobodyさん2010/03/20(土) 23:02:23ID:???
>>20
動きました、ありがとうございます。
0024nobodyさん2010/03/20(土) 23:13:50ID:???
>>22
レスありがとうございます。

empty($this->data) ならば、フォームが表示される処理のみされる
(editの場合はreadされた値が代入され表示される)
ということですね。

丁寧に説明していただき、とても助かりました。
0025nobodyさん2010/03/20(土) 23:42:34ID:???
公式以外で入門サイトありませんか?
0026nobodyさん2010/03/21(日) 00:20:20ID:???
>>25
googleってサイトが便利らしいぞ
0027nobodyさん2010/03/21(日) 00:53:04ID:???
>25
素直に本買った方が早いと思う
0028nobodyさん2010/03/21(日) 10:11:29ID:???
>>27
本買うことにします

>>26
googleで検索してもたいして有益なサイトはありませんね、国内サイトしか見てませんけど
0029nobodyさん2010/03/21(日) 11:34:14ID:???
えっ!?
0030nobodyさん2010/03/21(日) 11:52:05ID:???
初心者向けの開発会の需要はあるかねえ?
前に誰かがやってた気がするんだけど
0031nobodyさん2010/03/21(日) 11:52:20ID:???
25=28=30
やっぱりcakephpは難しいのでCodeIgniterに移住します
公式のユーザーガイドが分かりやすくてフレームワーク初心者のぼくでもなんなくわかりやすいので
ありがとうございました
0032nobodyさん2010/03/21(日) 12:04:06ID:???
>>31
cakeもそんなに難しくはないので、また気が向いたら戻ってきてね
0033nobodyさん2010/03/21(日) 13:54:33ID:???
>>30
プログラマの将来のためにも
初心者向けの入り口は作ってあげたほうが良いよ。
まぁ、ほとんど挫折するだろうけど
0034nobodyさん2010/03/21(日) 14:05:16ID:???
入門はそんなに難しくないと思うけどな
カンタンでわりと実践的なチュートリアルを増やしたらいいかも
0035nobodyさん2010/03/21(日) 15:09:25ID:???
初心者向きのサイトはけっこうあると思うけどなぁ。
むしろ本だとbake中心だったりして実用的じゃない
0036nobodyさん2010/03/21(日) 16:25:52ID:???
常識的に考えてDBっていくつまで hasOne,hasMany,belongsTo していいものなの?
あんまりやりすぎても負荷がかかるんだろうけど。
4,5個つなげる程度なら問題ないのかな。
0037nobodyさん2010/03/21(日) 17:39:14ID:???
みんな開発環境って何使ってるの?
■ このスレッドは過去ログ倉庫に格納されています