トップページ⇒php
985コメント270KB

【PHP】フレームワーク CakePHP 15ホール目【v2.2】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2012/12/04(火) 13:06:36.87ID:ExCLhBiP
CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです
CakePHPから派生した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/
0445nobodyさん2013/03/29(金) 17:48:51.90ID:???
あ、できるんですか。調べてみます。
0446nobodyさん2013/03/29(金) 20:24:19.11ID:V/nrZl0A
バリデーションでもういっちょ質問。
renderで前の画面を表示する際に
本来のactionでsetしなければならなかった
viewの変数達がsetされてないため
不完全な表示になってしまうことがあるんだけど、
これはどのように回避するのがいいですかね?
0447nobodyさん2013/03/29(金) 20:32:46.93ID:???
チュートリアルやれっつってんだろボケカス
0448nobodyさん2013/03/29(金) 21:35:18.24ID:xqLXLSQF
>>447
君には聞いてないから。
0449nobodyさん2013/03/29(金) 22:50:15.12ID:???
すなぁ
0450nobodyさん2013/03/29(金) 23:28:20.53ID:???
まともな質問にはまともな答えが返ってるようだな。
なかなか良スレ。
0451nobodyさん2013/03/30(土) 01:19:42.24ID:I9ajj83R
>>447
チュートリアルやれやれ五月蝿いけど
render呼ぶ際にいちいちsetするとかだろ?
そんなんじゃなくて自動で前の画面の変数をセットしてくれる機能とか
あるのかって聞いてんだよ。
0452nobodyさん2013/03/30(土) 01:48:59.80ID:???
違う的外れ。
チュートリアルやってないからそんな質問でてくる。
やれ。
0453nobodyさん2013/03/30(土) 01:57:00.77ID:???
>>451
お願いだから消えてくんない?
0454nobodyさん2013/03/30(土) 02:11:56.67ID:I9ajj83R
>>452
だから便利な機能があるかどうか聞いてんだよ。
CakePHPしか知らない能無しなんだから
馬鹿みたいに言われたことだけに答えてろよ雑魚野郎

>>453
聞かれたことに答えられない能無しであるお前が消えろ
0455nobodyさん2013/03/30(土) 02:14:08.93ID:???
まともな答ってどれだ?
0456nobodyさん2013/03/30(土) 02:45:50.33ID:???
チュートリアルにその方法なかった?
0457nobodyさん2013/03/30(土) 04:36:21.06ID:???
ていうかそれCakePHPの問題じゃないよね
0458nobodyさん2013/03/30(土) 10:16:31.67ID:???
CakePHPって中級以上向けのまともな本がないな…。
プラグインの使い方とか知りたいのに「詳しくはググって」みたいに済ませていて笑えたり。
0459nobodyさん2013/03/30(土) 13:11:57.96ID:???
プラグインは個人が作ったのばかりだから、
本で解説ってのはなじまないんじゃね?
0460nobodyさん2013/03/31(日) 18:41:41.57ID:???
>>452
チュートリアル見てみたけどバリデーションエラー時の前画面の表示は
renderでやってるじゃん。
CakePHP1.2ガイド見てもrenderでやってた。
ちなみにsetActionで前画面のアクションを呼び出すというのがいいと言うのが俺の解な。
まったくCakePHPしか知らねぇ癖に糞の役にも立ちやしねぇな。
0461nobodyさん2013/03/31(日) 18:52:51.02ID:???
もうひとこと言わせてもらうと
バリデーションエラー時の前画面の表示にsetActionを使うなんて
どこ調べても出てこない。
setAction自体がマニュアルにも載ってないとか。
もっと言うとsetActionという名前自体がどうなのよ。
分かりやすくforwardとかにしろよ。
CakePHPユーザーおよびフレームワーク自体がカスであることを
再認識させていただきました。m(-_-)m
0462nobodyさん2013/03/31(日) 19:36:29.24ID:???
最後の2行入れることでお前の自己顕示欲を満たす意味があるのかと。
0463nobodyさん2013/03/31(日) 19:50:13.35ID:???
「自己顕示欲を満たしたいだけのバカ」と言いたいだけの馬鹿
0464nobodyさん2013/03/31(日) 20:02:41.94ID:???
無理して使わんでもええんやで
0465nobodyさん2013/04/01(月) 01:39:55.04ID:???
>お前の自己顕示欲を満たす
ちげーよ。CakePHPerを馬鹿にしてんだよ。
0466nobodyさん2013/04/01(月) 03:36:35.33ID:???
CakePHPはフォーラムも停滞してダメダメになってたけど、
質問もまともに出来ないようなのが興味持ってるんじゃ
いよいよもって末期だなぁ。
0467nobodyさん2013/04/01(月) 09:29:09.18ID:???
質問してもまともに答えられないの間違いだろ?
0468nobodyさん2013/04/01(月) 10:44:06.52ID:???
そもそも2chで質問して、素直に答えが返ってくると思ってるのが
おめでたいわー
0469nobodyさん2013/04/01(月) 11:09:14.92ID:???
基地外に餌与えちゃだめ
0470nobodyさん2013/04/01(月) 12:59:33.05ID:???
質問に答えられないのを2chのせいにしちゃダメだろ坊や
0471nobodyさん2013/04/03(水) 08:33:35.47ID:???
>>465
奴らは街角で拉致られてタコ部屋に押し込められて強制労働させられてるのか?
自ら希望して派遣会社に登録したんじゃないのか?
まずそこをハッキリして貰いたいんだが。
0472nobodyさん2013/04/03(水) 15:42:47.66ID:???
ここで質問しても罵られて終わりかー
こわぁ〜
0473nobodyさん2013/04/03(水) 16:03:13.34ID:???
しつけー
0474nobodyさん2013/04/03(水) 16:26:24.46ID:JryerC8V
ご教授お願いします><
CakePHP2.2を利用しています。
ファイルアップロードに関してなのですが、CSVアップロードで容量の壁かどうかはわからないのですが、一定のレコード数で止まってしまいます。
原因が分かる方がいましたらよろしくお願いします。
0475nobodyさん2013/04/03(水) 16:30:23.96ID:???
エスパーもとめてんのか
エラー文さらせ
現在のPHP定数での設定値さらせ
これやるまで二度と書き込むな
0476nobodyさん2013/04/03(水) 17:38:27.11ID:???
>>474

CSVで良くあるエラーとして、レコード中のカンマの所為でエラー起こしてるとか
0477nobodyさん2013/04/03(水) 18:00:09.38ID:???
CakePHPってCSVをアップロードすると、何か自動で処理する機能があったんだっけ?
知らなかったわ。
でも、ファイルアップロードを受け取るコントローラーから、自作しなければならなかったと思ったが・・・
どういうことなんだろうなぁ
0478nobodyさん2013/04/03(水) 20:07:54.74ID:???
>>474
ここで質問しても罵られて終わりだよ。
Webプログラム板きっての能無し集団なものでwww
04794742013/04/03(水) 20:27:15.22ID:???
そうなんですか。
わかりました、では自分で調べてみますね。
0480nobodyさん2013/04/03(水) 20:49:48.15ID:???
>>474
遠目に見たら、IDがCSVに見えた
0481nobodyさん2013/04/03(水) 22:11:45.79ID:???
>>474
単にサーバのupload_max_file_sizeとpost_max_sizeが引っかかってるだけだろ
0482nobodyさん2013/04/06(土) 11:04:36.90ID:???
Scaffoldやbakeって使ってる?
ぱっと見仕事では使えんって印象なんだけど
0483nobodyさん2013/04/06(土) 14:08:37.75ID:OGaSOh8K
シェルとコントローラーの共通処理はどこに書けばいいの?
コンポーネントを使っているんだけどモデルの使用は非推奨らしいし
普通はどうするの?
0484nobodyさん2013/04/06(土) 14:17:53.75ID:???
>>482
Scaffoldは使ったこと無いけどBakeは使う
アソシエーションとか自分で書くとミスる事あるし
0485nobodyさん2013/04/06(土) 17:24:40.44ID:???
>>482
使ってないな。一回開発したら共通のモデルとかコントローラが出てくるし、
それをコピペしながらカスタマイズする感じだな。
>>483
シェルでモデル使えるけど
0486nobodyさん2013/04/06(土) 17:28:37.37ID:???
俺も自分で書いた前製品のコントローラやモデルを使い回しているので、bake等は使わない
生成したものが製品でそのまま使えるケースってないんじゃないか
0487nobodyさん2013/04/06(土) 18:44:58.10ID:???
>>482
bake も scaffold も捨てちゃったら Cake のメリット半減するんじゃないか?

テーブル作った直後、まだカラムが流動的なときは scaffold 、
ほぼテーブルのスキーマが決まったかなという時点で bake
その後の開発ではそこでできたファイルを適宜修正

ってのが理想的なフロー

とは言え、現実的にはなかなかそうはならない。

>>483
>モデルの使用は非推奨

おい、そんなデタラメ誰が言ってるんだよ
むしろ推奨だよ
0488nobodyさん2013/04/10(水) 18:01:06.48ID:???
散々既出だと思うけど、Cookbook2.xの日本語版ないのか
俺は英語でも良いんだけど、同僚に見せたいのに困るな
0489nobodyさん2013/04/11(木) 11:55:18.07ID:???
マニュアルか?ググったら即効出てくるぞ
0490nobodyさん2013/04/11(木) 12:08:30.31ID:???
1.3のはあるけど、2のがないんだよ
0491nobodyさん2013/04/11(木) 12:17:18.06ID:???
「cookbook2 日本語」でググったか?
どんだけ検索能力ないんだよ
0492nobodyさん2013/04/11(木) 13:24:26.40ID:???
ごめん、俺の書き方が間違ってた

× Cookbook2の日本語版がない
○ Cookbook2の日本語版には英語版にあるページがない(全部訳されてないっぽい)
0493nobodyさん2013/04/11(木) 13:35:21.05ID:???
いい加減にしろ
0494nobodyさん2013/04/11(木) 14:10:30.99ID:???
はい
0495nobodyさん2013/04/11(木) 15:20:25.40ID:???
日本語が不自由でもPHPは使えるんですね。




あ、使えてないか(笑)
0496nobodyさん2013/04/11(木) 17:27:04.18ID:q32J/zOv
CakeDC users pluginをインストールして正常に動作しています。
それで、実際のアプリケーションはどこに書いたらいいのか分かりません。

プラグイン内に追記していいのでしょうか。
普通、プラグインの中身を書き換えたりするものなんでしょうか?

それとも、app以下にいつもどおりアプリケーションを作るのでしょうか。
その場合、どうやったらプラグイン内のアクションやビューを拡張できますでしょうか。

初歩的な質問ですみませんが、調べても分かりませんでしたので教えて下さい。
0497nobodyさん2013/04/11(木) 17:42:33.10ID:???
    ∧__∧
    ( ・ω・)   いやどす
    ハ∨/^ヽ
   ノ::[三ノ :.、
   i)、_;|*く;  ノ
     |!: ::.".T~
     ハ、___|
"""~""""""~"""~"""~"
0498nobodyさん2013/04/11(木) 17:49:30.50ID:???
まず、CakeDC users pluginを知らない。有名なプラグインなのか?
0499nobodyさん2013/04/11(木) 17:54:19.52ID:???
有名もなにもCakeDCはcakephp謹製なんだ
でもuserは使ったこと無い。
んでpluginに直接手を入れるってのは普通やらない
App内のControllerからPlugin.Compinentを呼んだり同じくBehaviorをModelから呼んだりってのが普通
0500nobodyさん2013/04/11(木) 19:18:55.66ID:???
>>499
ありがとうございます。
0501nobodyさん2013/04/11(木) 22:30:36.69ID:3witJWIv
テストのfixtureでindexを定義する方法をご存じでしたら、教えてもらえませんか?

Modelのfindで以下のように定義を追加してindexを使用するようにしています。
'joins' => array('FORCE INDEX(hoge)')

ただテスト時に作成されるDBにはindexが張られていなくて、テストを作ったらエラーになってしまいます。
0502nobodyさん2013/04/14(日) 20:14:25.82ID:???
iPhoneアプリ. Windowsアプリを売って生き残れ Ver 1.7 リンク数61
Http://qr. net/kh4y
0503nobodyさん2013/04/15(月) 10:52:07.00ID:ad40gkzw
よろしくお願いします。
CakePHP2のfindでアソシエーションをしているのですが、conditionsに
ModelA.ColumA=>"aaa",
ModelB.ColumB=>'cccc'
とやっても複数モデルの条件検索が通らず困っています、何卒よろしくお願いします
0504nobodyさん2013/04/15(月) 11:47:30.23ID:???
コマンドからではなくてブラウザからbakeする方法ってないですか?
自作しないとそういう機能はない?
0505nobodyさん2013/04/15(月) 13:54:39.83ID:???
>>504

ブラウザからbake出来ちゃうとセキュリティー的に危ないだろw
0506nobodyさん2013/04/15(月) 14:02:45.08ID:???
そりゃ答えになってないだろ
debugモードじゃないと動作しないとかいくらでも可能だろ

俺の知るかぎりじゃ存在しない
0507nobodyさん2013/04/15(月) 15:15:48.14ID:???
>>503
それだけじゃよく分からんが、SQLを見てどうなってるの?
二つじゃダメでも一つだとOKなの?
そもそもちゃんとアソシエーションは組まれてて、
絞り込みをしない場合には結果取得できてるの?
0508nobodyさん2013/04/15(月) 15:18:02.08ID:???
>>504
聞いたこと無いな
検索してもそれらしいのはなかった
0509nobodyさん2013/04/15(月) 15:21:01.40ID:???
>>501
確か出来たよ。
テストも通常のも同じはず。

ちょっとやりかた忘れた、というかそもそも覚えちゃいないけど、
組み込みのソースで、なにか適当なサンプルになりそうなのがあったんじゃないか?
Testじゃないけど、Acl周りのスキーマ見てみた?
0510nobodyさん2013/04/15(月) 19:20:03.21ID:???
やはり>>504はできないですか
そういう機能作れそうだから自作すればいいのかな
ローカルだと鯖のDBに繋げないから、鯖側で作りたいんだよね
0511nobodyさん2013/04/16(火) 07:27:27.51ID:???
ろーかるだと鯖につなげない?
繋げば良いじゃん

鯖でやりたい??
やればいいじゃん
0512nobodyさん2013/04/16(火) 13:39:21.70ID:???
>>511

鯖のセキュリティーポリシーで、クロスドメンできないんじゃないの?
0513nobodyさん2013/04/25(木) 17:49:24.04ID:???
2.3.3きた
セキュリティ関係だそうで
0514nobodyさん2013/04/25(木) 22:03:05.11ID:???
CakePHPが他のフレームワークより優れてるとこってどこやろう?
どれも一長一短
0515nobodyさん2013/04/26(金) 11:06:34.66ID:???
>>513
恐ろしく致命的
0516nobodyさん2013/04/26(金) 11:23:55.31ID:???
Authコンポーネント使っててSecurityコンポーネント使ってない場合限定の脆弱性ではある。
普通組み合わせて使うからな。
0517nobodyさん2013/04/26(金) 14:52:40.50ID:???
>>516
Securityコンポーネント使ってても問題が発生したぞ
0518nobodyさん2013/04/26(金) 23:58:38.16ID:???
Cakephpはセキュリティ面が劣るという意味でしょうか?
初心者ですいません
0519nobodyさん2013/04/27(土) 01:42:03.53ID:???
2.2系でパッチを出してないってことは2.2から2.3に
アップデートした際のバグなんだろ。

セキュリティリスクは何使ってても存在するんで、
Cakeがダメなら何がOKってもんでもない。

メジャーなオープンソースだと攻撃者にしてみれば
ターゲットが沢山あるんでクラックしがいがあると同時に
開発者も多いんで対応も早い。

極端な話、誰にも公開していないオレオレフレームワークを
自分だけで使ってたとして、よほど物好きじゃない限りわざわざ
セキュリティホールを探してクラックしてみようとは思わない。

これは別にWebに限った話じゃないけど。
0520nobodyさん2013/04/27(土) 02:21:37.37ID:???
Cake2.x系でSmarty使ってる人いる?
情報があんまりないから、もうSmarty使わないのかな
0521nobodyさん2013/04/27(土) 11:43:57.26ID:???
Smartyとかもう懐かしむ対象だろ
0522nobodyさん2013/04/27(土) 12:05:08.54ID:???
2.3の件、詳細は後で教えるから先にアップデートしろって案内なのか。
意図はわかるけど、先に詳細を知りたい気もするな。
0523nobodyさん2013/04/27(土) 12:10:24.19ID:???
>>522
本家のサイトに毎回きっちりアップデートログ出てるだろ
一体どこ見てんの?
0524nobodyさん2013/04/27(土) 12:12:47.67ID:???
それか、あれを読んでのことなら普通はあれ以上のことは言わないだろ。

どんなセキュリティホールがあったかなんて具体的なこというと
ふざけてアタックする連中をいたずらに増やすだけ。
0525nobodyさん2013/04/27(土) 13:09:11.47ID:???
>>524
そうそう、どんなセキュリティホールなのか具体的な記述がないことを言ってる
理由もわかるけど、先に知りたいなあと思っただけ
0526nobodyさん2013/04/27(土) 14:40:04.43ID:???
>>525
公開されたら試すやつが続出する。それくらい簡単な操作で発生する。
0527nobodyさん2013/04/27(土) 14:42:12.75ID:???
なんでお前はそれを知ってるんです?
0528nobodyさん2013/04/27(土) 15:39:38.12ID:???
CakePHP のログの一番先頭の
db6dd18 Fixing case where it was possible to pass array data to FormAuthenticate fields
から github で履歴見たら?
配列のデータを渡された場合の対処が考慮されていなかったんじゃない?
0529nobodyさん2013/04/27(土) 22:03:51.99ID:???
シェルのテストの書き方がわからねえ…
ぐぐっても2が出る以前の古い記事しか出て来ない
色々やったけどモデルがundefinedで例外になるなあ、どうすればいいんだろう
0530nobodyさん2013/04/28(日) 00:40:22.04ID:???
>>521
そうなんだけど、期間指定でググると
Smarty自体使ってる人は結構いるみたいなんだよ。
PHPの解説なんかでSmartyの話しだしたりさ。

ただ、Cakeではそういう意見が見当たらないから
使ってないのかな?と思ったわけで。
0531nobodyさん2013/04/28(日) 01:01:05.99ID:???
使用者が少ないのか、情報が少なくてもうダメだな
0532nobodyさん2013/04/28(日) 01:02:45.63ID:???
>>530
CakePHPはテンプレートは素のPHPに見えるctpファイルって基本があるのに、
わざわざSmartyにする必要ないじゃん。
しかも下火になってるSmaryに。
まぁCakePHP+Smartyでやってるとこはあるよ。
保守でまだまだ1.3を使ってる人もいるし、
昔Smarty組み込んでそのままってアプリもあるだろうしな。
2でSmartyってとこがあるのかは知らん。
0533nobodyさん2013/04/28(日) 03:42:12.33ID:???
ctpでコーディングしてくれるデザイナーやコーダーっているの?
いや、いるだろうけど、嫌がったりしないんだろうか
0534nobodyさん2013/04/28(日) 12:59:08.75ID:???
ctpでコーディングするには、ある程度PHPの知識が必要だぞ。
逆で、デザイナーが作ったデザインに
プログラマがPHP埋め込んでctpで保存して、
一部をデザイナーやコーダーが修正する、ってならあるだろうけど。
0535nobodyさん2013/04/28(日) 17:25:52.78ID:???
なんでもSmartyだった、フレームワークもまだそんな無かった頃ならまだしも
フレームワークのテンプレートを分かるデザイナーは増えてるよ。

>>534 のようなワークフローで対応してる会社もあると思う。
ただ、デザイナーならまだしも、コーダーならctp分かると思うけど。
0536nobodyさん2013/04/28(日) 17:31:43.26ID:???
昔は大概のプログラマの知識でコーディングもカバーできたけど、
今はちょっとなぁ。
javascript のコード規約をうっかり忘れるととんでもないものを作りかねない。

ここまでjavascriptが重要になってくると、
JS使いの人間がコーディングの中心に立って
HTML使いとサーバーサイドの人間を上手く使ったほうが
効率がいいんじゃないか?
0537nobodyさん2013/04/28(日) 17:33:51.93ID:???
Smarty はもはや話者の少ない訛りのきつい方言みたいになったな
0538nobodyさん2013/04/29(月) 03:00:33.08ID:???
第三者がテンプレいじらない限りには、
WordpressみたいにPHPを直接編集させるほうが効率いいよな
0539nobodyさん2013/04/29(月) 22:19:28.10ID:???
Windows上でPHP+CakePHP+MySQLのシステム開発をしようと思うんですが。
特に問題ありますか?
Linux上でした方が良いのでしょうか?
0540nobodyさん2013/04/30(火) 04:02:38.43ID:???
普通にやってる人もそれなりにいるが、お勧めはしない。
大抵サーバーはLinuxだろうから、そりゃLinuxかMacでやったほうがいいよ。
本来Windows向けじゃないものを、ユーザーが居るからって、
ちょっと無理して動くようにしてるんだから、なにかトラブルにあたる事もやっぱある。
それを解決したりする努力って、本来しなくてもいいことだし、
解決してもサーバーで動かすときには必要の無い知識になるよ。
0541nobodyさん2013/04/30(火) 04:03:29.10ID:???
特に問題はない。
俺は自宅で作成してる時はいつもWindowsでやってる。
会社ではMac

改行コードが問題になる場合は注意。
あと何だろう。
何か細かい問題があった気がするが今思い出せない。
0542nobodyさん2013/04/30(火) 05:37:18.71ID:99fKZa1l
unixでやるに越したことはない。

だからといって是が非でもって訳でもない。

たぶん誰に聞いても同じ答え。
0543nobodyさん2013/04/30(火) 12:03:11.61ID:???
今回のセキュリティパッチはすべてのバージョン対象。
Cakeユーザは見逃すな!

http://bakery.cakephp.org/articles/markstory/2013/04/28/security_release_-_cakephp_1_2_12_1_3_16_2_2_8_and_2_3_4
0544nobodyさん2013/04/30(火) 14:22:37.74ID:???
>>539
xamppとかインストールすれば
0545nobodyさん2013/04/30(火) 17:35:18.21ID:???
>>543
とのことですが、単にcakeフォルダを上書きすればOKなんですかね?
■ このスレッドは過去ログ倉庫に格納されています