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

【PHP】フレームワーク CakePHP 14ホール目【v2.1】

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

※他フレームワークとの比較等はスレ違いです
テンプレは>>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

前スレ
【PHP】フレームワーク CakePHP 13ホール目【v2.0】
http://kohada.2ch.net/test/read.cgi/php/1320768310/
0002nobodyさん2012/05/01(火) 17:02:19.22ID:???
落ちてたっぽいから立てたけど・・・大丈夫かな
0003nobodyさん2012/05/01(火) 18:42:40.42ID:???
>>1-2
乙!俺は感謝してるぜ
0004nobodyさん2012/05/02(水) 17:16:24.15ID:???
乙!いきなりDAT落ちしててびっくりしたから・・・

それにしても2.1.1でしかも2.2.0のベータって・・・早すぎだろw
0005nobodyさん2012/05/02(水) 17:30:40.73ID:???
2.1.2使用中で変な事になりました。

Aというコントローラがあります。
> public $uses = 'Bモデル';
という記述がしてあります。

Aのindexページで、
> echo $this->Form->create(null,array('type'=>'post','action'=>'Aのfunction'));

というフォームを作って送信すると、
Aファンクションのページに飛ぶかと思ったらなぜか/Bモデル/Aのファンクション/に飛んで、
当然ながらMissing Controllerが出ます。

indexページのソースを読むとフォーム自体が/B/Aファンクションに飛ぶようになってます。
どなたか原因分かりますでしょうか?
0006nobodyさん2012/05/02(水) 21:41:47.54ID:???
>>1おつ
0007nobodyさん2012/05/03(木) 18:56:39.25ID:2xcwqeF0
cakephpで作ったDBの中身をiphoneアプリからhttpで呼び出すと色々とめんどい?
0008nobodyさん2012/05/03(木) 23:43:44.23ID:???
>>7
簡単ではないけど面倒ってほどじゃないよ。

FlashBuilder(FlexBuilder?)でDBアクセスする方法がそのまま使えるんで、そのあたり調べるといいと思う。

体験版でandroidとかiPhoneのアプリ作り始めてサーバのDBアクセスのサービスを追加するとウィザードでコードを追加してくれるんで、必要な部分だけ流用してもいいかも。
(読み出しだけじゃなくて、追加・更新あたりのコードが全部追加されるので)

倫理的にはやり方だけ理解して自分で作った方が良いと思うけどw

まぁどうしてもcakeで作るなら結局作り直すことになるけどね
0009nobodyさん2012/05/05(土) 19:37:07.62ID:???
プラグインのwebroot直下にPHPファイルをおいて直接アクセスさせたいんだけど無理なのかな?
app/js/plugin_name/file_name.ext
を解釈するから、そもそも直下へのアクセス方法がない??
あばば
0010↑2012/05/05(土) 19:44:03.73ID:???
あ、勘違い臭い。さあせん
0011nobodyさん2012/05/05(土) 20:13:26.25ID:???
アクセスはできるけどPHPとして動かしてはくれないのか
そりゃそうか。そうなのか?まぁ仕方ないや。
0012nobodyさん2012/05/07(月) 04:57:19.77ID:???
バリデーションルールって、そもそもdataにそのカラムのキーが存在しない時はスルーしちゃうのね。
notEmptyスルーするからハマったわ。
requiredにtrueセットすればいいんだろうけど、この場合updateでうざいことになる。
じゃあってんで、onをcreateにして新規のときだけってしちゃうと、
更新時にnotEmptyが効かない=空でもスルーしちゃう

'field' => array(
'notempty' => array(
'rule' => array('notempty'),
'on' => 'update', // Limit validation to 'create' or 'update' operations
),
'notempty2' => array(
'rule' => array('notempty'),
'required' => true,
'on' => 'create', // Limit validation to 'create' or 'update' operations
),
),

こうしろってこと?
相当めんどくさいんだけど
0013nobodyさん2012/05/07(月) 05:06:28.87ID:???
'field' => array(
 'notempty' => array(
  'rule' => array('notempty'),
 ),
 'required' => array(
  'required' => true,
  'on' => 'create',
 ),
),
これでよさげ。これなら許せる。
0014nobodyさん2012/05/07(月) 20:37:16.11ID:???
codeigniterと比較するとバリデーションの可読性が悪いな。
配列が入れ子になってるのが悪い。
0015nobodyさん2012/05/09(水) 22:39:47.65ID:rDWus5fC
CakePHPでGDを使いたいんだけど、viewにそのままGDのコード(色つきの長方形を描くような)
文字化けしてしまいます。
php.iniではUTF8、<?phpの前に余計なものもはいってない状態ですが、
CakePHPでGDを使う際には何か注意すべき点はあるのでしょうか
0016nobodyさん2012/05/10(木) 14:58:57.25ID:???
今後の案件はじめるなら2のほうがいいの?
1.3で作ったシステムがあるんだけどこれからも使える?
0017nobodyさん2012/05/10(木) 15:10:33.63ID:???
>>13だめだったrule設定がないと確実にそのバリデーションがエラーになる。
0018nobodyさん2012/05/10(木) 18:33:31.10ID:???
>>16
「何で」作るかじゃなくて「何を」作るかだと思います。
0019nobodyさん2012/05/10(木) 18:52:33.46ID:???
はぁ?あれは1.3で作ったほうがいいがこれは2で作った方がいいとかあるの?
0020nobodyさん2012/05/10(木) 19:10:29.64ID:???
ない
0021nobodyさん2012/05/10(木) 19:11:07.26ID:???
強いて言えば何処の命で作るか。はあるかも。
0022nobodyさん2012/05/10(木) 22:59:50.95ID:???
参考になるかわからないけど、以前からCakePHPを採用している会社は新規案件も1.3だったけど、うちは1.xの実績ないから2.x採用してる
0023nobodyさん2012/05/10(木) 23:19:54.66ID:eaLKfNi7
cakephp1.3でボタンにロールオーバーさせたいんだけどうまくいかない。
smartRollover.js使って画像を_onと_offできりわけたいです。

だれかご教授くださいお願いします。
0024nobodyさん2012/05/11(金) 03:36:35.15ID:???
cake関係ないので嫌です
0025nobodyさん2012/05/11(金) 16:05:50.69ID:???
cssでやれよ
0026nobodyさん2012/05/13(日) 22:01:55.09ID:???
cakePHP2.0 を使っています。
現在、cakePHPのsave()を使ってupdateしようと
思っているのですが、そもそも更新対象のテーブルに主キーが2つある場合には
どうしたら更新(update)させる事が出来るのでしょうか?
(saveはinsertとupdateを自動で判定するそうなのですが
下記コードだと常にinsertが走ってしまい主キー違反エラーが出てしまいます。)


■table(hoge)
p_id_1 (int) 主キー
p_id_2 (int) 主キー
name (varchar)

■php
$p_id_1 = 11;
$p_id_2 = 22;
$name = "ななし子";

$hoge_data = array(
  'hoge' => array ('p_id_1' => $p_id_1,'p_id_2' => $p_id_2,'name' => $name));
$this->hoge->save($hoge_data);
0027nobodyさん2012/05/13(日) 22:10:28.52ID:???
主キーが2つ???
0028nobodyさん2012/05/14(月) 00:40:01.29ID:???
ありえない
0029nobodyさん2012/05/14(月) 00:42:24.81ID:???
完全に設計が破綻しています。本当にあry
0030nobodyさん2012/05/14(月) 02:26:11.78ID:???
>>27
複合キーです。
0031nobodyさん2012/05/14(月) 02:30:08.93ID:???
複合キー cakephp で検索
■ このスレッドは過去ログ倉庫に格納されています