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

【PHP】フレームワーク CakePHP 10ホール目【v1.3】

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

※sage推奨
※質問時も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
0685nobodyさん2011/01/26(水) 18:10:59ID:???
>>684
$this->redirect($this->cakeError('error404'));
$this->_stop();

こうでしょうか?特に>>683の状態と変化ありません。
0686nobodyさん2011/01/26(水) 18:42:15ID:???
cakeErrorから離れろよ。あとAPIよく読め。
0687nobodyさん2011/01/26(水) 18:46:08ID:???
>>683
単なるブラウザがはき出す404というのが、よくわからん。
404 Not Found でも、サーバーから 404 Not Found のページをはき出すと思うが
0688nobodyさん2011/01/26(水) 23:08:01ID:???
今から勉強すれば
しばらくは、これで食っていけますか?
0689nobodyさん2011/01/27(木) 01:08:25ID:???
何を作るかが重要だけど
0690nobodyさん2011/01/27(木) 13:53:36ID:???
勉強しただけで食えるなら誰でもやってるだろう
0691nobodyさん2011/01/27(木) 14:03:44ID:???
十分条件じゃなくて必要条件だろ
0692nobodyさん2011/01/27(木) 18:20:00ID:???
前に「Cakeの使い方教えてください」的な仕事の依頼をどこかで見た気がするw

以外と使いこなしている人少ないから、
勉強して覚えれば講師業が出来るかも??
0693nobodyさん2011/01/27(木) 21:42:07ID:???
CakePHPで運営されてる大手サービスってありますか?

CakePHPで儲かるシステム作れますか?
0694nobodyさん2011/01/27(木) 21:48:50ID:???
あります
作れます
0695nobodyさん2011/01/27(木) 22:29:11ID:???
トピックイットとFirefoxのアドオンサイト以外で
有名な大手サービスってどこ?
0696nobodyさん2011/01/27(木) 23:01:46ID:???
book.cakephp.orgのサイトが重すぎるんだけど
これはCakePHPの使えなさを表していると見てOK?
0697nobodyさん2011/01/27(木) 23:07:24ID:???
実はcookbookはCakePHPを使ってなかったりして
0698nobodyさん2011/01/28(金) 00:40:18ID:???
>>694
CakePHPで運営されてる大手サービスって何があるよ?
0699nobodyさん2011/01/28(金) 00:44:07ID:???
大手と言えるのかは知らんがnanapiとか
0700nobodyさん2011/01/28(金) 00:56:22ID:???
CakePHPで運営ってなによ
運営の意味も分からないの?氏ねばいいのに
0701nobodyさん2011/01/28(金) 01:49:29ID:???
>>699
他には何かあるのかな?
そもそもCakePHPって世界で盛り上げて行こう!って動きなのかな?

セキュリティー関連とかの対策プラグインとかも次々更新されてたり、新しいプラグインも作られてるのかな?

世界で有名なサイトとか、これで構築されてたら感動する。
0702nobodyさん2011/01/28(金) 01:52:03ID:???
10万人規模の会員サイトには耐えられないんじゃないかな
0703nobodyさん2011/01/28(金) 02:01:22ID:???
ttp://puyo2.upper.jp/cake/files/cakestudy20080220_remora.pdf
0704nobodyさん2011/01/28(金) 02:50:50ID:???
nanapiの開発日記?かなにかの資料見たけど、
動的な部分は素のPHPや別のシステムを使ってるっぽかった。
キャッシュもmemcacheを使ったり。

ま、それが普通だよな。Cakeだけでこなすにも重いもんな。
0705nobodyさん2011/01/28(金) 03:17:15ID:???
cakeでmemcacheつかえんじゃん
0706nobodyさん2011/01/28(金) 12:33:42ID:???
フィールド「open_time」がMySQLのフィールドタイプでtimeなんだけど、
モデル内で
function getTime(){
return $this->data['Shop']['open_time']['hour'].':'.$this->data['Shop']['open_time']['min'].':00';
}
としたら、配列hour内に格納されている値は10なのに
1に変更されてしまうのは仕様?
0707nobodyさん2011/01/28(金) 12:47:02ID:???
>>706
それは知らないけど。
なぜsecに0を入れないのか。
0708nobodyさん2011/01/28(金) 13:22:11ID:???
>>707
secの配列は用意してないんで。
もしかしてそれが原因とかあるのかな?
0709nobodyさん2011/01/28(金) 15:22:25ID:???
サイトがCakeで作られてるかどうかなんて
表示されてなきゃわからないよね?
0710nobodyさん2011/01/28(金) 16:21:34ID:???
自己申告からしか分からないだろJK
(サイト内での表示や言及を含めて)

まあ食わされるCookieのキーがデフォルト"CakePHP"だったりとか
Routingがあきらかに(Railsではなく)Cake風それだったりとか
DOMの構造があからさまにBakeした「それ」だったりとか
そういうことはあるかもしれんが、ちゃんと作ってあるものからは分からない
0711nobodyさん2011/01/28(金) 17:09:30ID:???
paginateとかが出力するnamedパラメータとか。
0712nobodyさん2011/01/28(金) 17:39:44ID:???
フォームのnameが data['User'['name']]
とかだったら一発で分かるんだけどな
0713nobodyさん2011/01/28(金) 17:41:06ID:???
打ち間違えた・・・data[User][name]こうだった・・・

ソース見ると大体分かるパターンが多い気がする。
0714nobodyさん2011/01/28(金) 18:34:31ID:???
ページネーションとかフォームとかだとこの詐欺オクサイトもそれっぽい
http://www.world-auctions.org/
0715nobodyさん2011/01/28(金) 18:41:16ID:???
cakeで作ったことをできるかぎり隠すっていう良エントリあったはず。
どこだったか忘れたけど。
0716nobodyさん2011/01/28(金) 19:00:34ID:???
>>715
去年のadvent calenderかな。そういうのあったね。

つか、〜というフレームワークだから大規模サイトが作れないっていうのはほとんどありえないと思うけどな
大抵のフレームワークは拡張できるようになってるからそこに自分らの手を加えるでしょ。
0717nobodyさん2011/01/28(金) 19:27:25ID:???
>>715
http://d.hatena.ne.jp/k1LoW/20101202/1291262612
これか
良エントリだな
0718nobodyさん2011/01/28(金) 19:48:17ID:???
?url=/ を付けてトップページが出たらCakePHPの可能性大
ってどうしようもない?
index.phpかどこか書き換えればよさそうだが
0719nobodyさん2011/01/28(金) 20:02:02ID:???
恥ずかしがらずにトップページにCAKEPHPとポップアップ表示させるべき
0720nobodyさん2011/01/28(金) 20:13:08ID:???
逆にCake使ってないのをCakeに見せかけることは簡単そうだな
0721nobodyさん2011/01/28(金) 20:19:51ID:???
オレオレフレームワークでそうしてるわw
0722nobodyさん2011/01/28(金) 20:27:10ID:???
>>720的な発想で、cakeっぽい部分を隠すんじゃなくて、symfonyやzendやethnaやrailsやdjangoっぽい要素を
ふんだんに盛り込めば、フレームワークが特定されにくくね?
0723nobodyさん2011/01/28(金) 20:35:27ID:???
そうすると仕様がまとまらずに、開発しづらくなるな
0724nobodyさん2011/01/28(金) 20:50:26ID:???
逆転の発想で、ちいたん風にすれば
0725nobodyさん2011/01/28(金) 21:21:01ID:???
初心に返って、URLをなんたら.cgiにすれば
0726nobodyさん2011/01/28(金) 21:41:35ID:???
くっだらねーどうでもいいことをうだうだと
0727nobodyさん2011/01/28(金) 23:17:34ID:???
と、一番どうでもいい人が言いました
0728nobodyさん2011/01/29(土) 00:32:20ID:???
xampp cakephp qdmail の組み合わせで
ローカルホストから、メール発信しようとしてもメールが送られません。
一応画面遷移などは行って、正常にうごいてる様には見えるのですが
肝心のメールが送られていないようです。

環境はcakephp1.3. qdmail1.2.6です。
どなたか分かる方いらっしゃいませんでしょうか?
0729nobodyさん2011/01/29(土) 00:37:11ID:???
メール遅れるかどうかはどう考えてもスレ違い
0730nobodyさん2011/01/29(土) 02:43:01ID:???
>>714
もろCakeだな
しかし、リアルタイムに入札状況を(1秒毎とかに)取得する際に、
サーバ側でレスポンスする部分はCakeじゃないんだろうな。
入札状況一覧の静的ファイルを置いて読みに行ってるとかかな

ま、どう考えてもシステムがユーザの名を騙って入札してるな
そんで屍の山を築いた後落札するのはシステム側のユーザと・・・よくできてるな
0731nobodyさん2011/01/29(土) 02:59:12ID:???
akiyanのペニオクも知らないんだな
どうりでアホばっかだ
0732nobodyさん2011/01/29(土) 03:07:12ID:???
>>731
何それ
俺はアホで知らないから説明してくれよ
0733nobodyさん2011/01/29(土) 03:18:19ID:???
ggrbkks
0734nobodyさん2011/01/29(土) 04:08:26ID:???
お呼びじゃないよお前
0735nobodyさん2011/01/29(土) 12:12:46ID:???
>>717
頑張りは認めるんだけど、「攻撃者への攻撃の糸口として利用されてしまう」から
Webサーバやフレームワークに何使ってるか隠蔽しましょうって言われても
お前アホかとしか思えない。
労力注ぎ込む方向性が間違ってるだろ。
07367302011/01/29(土) 12:51:51ID:???
730です。

>>731
レスありがとう。

ペニオク自体は知ってたが、正直胡散臭いし、
俺の興味の方向性(お金を儲けるより面白い物を作る)と違ったので、
いままで完全スルーで来ていました。
ペニオクみたいなリアルタイム性の高いシステムにCakeのような重めのレスポンスの
システムが(一部であれ)使われているという一点に興味を持って、
しばらく入札の傾向とか出てくるユーザ名とか眺めてみたり、
無料コインで入札してみたり、ソース眺めて静的ファイルと思われる入札状況のXMLを見てみたり
してみた。まあ、自分でやる気はないが、少しは勉強になったよ。

akiyanもググってみたが、まあこういう人もいるだろうよ。ネットには。
コレに関してはほぼスレ違いだろ。
0737nobodyさん2011/01/29(土) 13:01:07ID:???
cakaPHPのコンポーネントとしてqdmailを使ってhtmlメールを送りたいです。

メールを表示した時に、目次からページ内にジャンプするように

<a href="#hereis">ABCの位置へジャンプ</a>
<br><br><br><br><br><br><br><br>
<span id="hereis">ここがABC</span>

このように書いたのですが、なぜかメール内では

<a href="#12dcfd6116a82cf6_hereis">ABCの位置へジャンプ</a>

と#の後に変な文字列が追加され上手くいきません。
もし原因が分かる方いましたら教えてもらえないでしょうか?

ちなみに、上記のコードはすべてmodel内で書いています。
0738nobodyさん2011/01/29(土) 16:27:24ID:???
http://www.akiyan.com/blog/archives/2010/09/penny-auction.html
前にもこのスレで話題になってた気がするけど、>>731はこれかなあ?
>定価7万の商品に対して、最終的に参加者全員が投入した合計手数料は35万
とか書いてるし、ペニオク推奨しているとも思えないんだが
0739nobodyさん2011/01/29(土) 16:54:25ID:???
前はリンクがアフィになってたけどいつの間にか消えてるな
0740nobodyさん2011/01/29(土) 17:28:00ID:???
突込みどころ満載
0741nobodyさん2011/01/29(土) 17:58:51ID:???
ペニオクが話題だな。と思ったら、さくっとCakeで2〜3日で作ってみる。
クーポンサイトにしてもソーシャルゲームにしてもそんな感じで遊びで作ってれば
後々で応用が利くよ。
0742nobodyさん2011/01/29(土) 18:20:26ID:???
そういうオークションの運営って違法にはならないの?
0743nobodyさん2011/01/29(土) 18:38:06ID:???
>>742
作れますっつうのと運営できますつうのはまた別の話。
法律家だのコネだのをちゃんと付けておくべし。

大手の激ヤスなんかはその辺しっかりしてる。
早々と拠点を香港に移し、世間の風あたりが強くなってきたと思ったらとっとと閉鎖。
逃げ足の速さはさすがだわ。
0744nobodyさん2011/01/29(土) 19:46:41ID:???
ペニオクは海外で販売されていたシステムがcakeだったような
0745nobodyさん2011/01/29(土) 20:03:31ID:???
マジ?仕様書とか見てみたいな
07467302011/01/29(土) 21:22:36ID:???
プラグインでBot入札のアルゴリズムとか入れられるなら胸熱だな
0747nobodyさん2011/01/29(土) 21:47:07ID:???
通常パッケージ \50,000
BOT拡張パッケージ \500,0000
0748nobodyさん2011/01/30(日) 13:49:39ID:???
どなたかCakePHP1.3でHello worldを表示するまでのMVCをソースで提供していただけませんか?
0749nobodyさん2011/01/30(日) 15:05:51ID:???
50000円でどうだ?
0750nobodyさん2011/01/30(日) 16:44:06ID:???
マジで金くれるなら1000円でもやってやるわw
0751nobodyさん2011/01/30(日) 17:09:03ID:???
既存DBの設計がcakephpに合ってないと使えないね
X a.user_cd = b.user_cd
○ a.id = b.a_id

まったくだめだね
0752nobodyさん2011/01/30(日) 17:15:25ID:???
俺は120円でいいぞ
0753nobodyさん2011/01/30(日) 17:16:24ID:???
>>751
それぐらいのDB設計の違いだったら、CakePHP内で吸収できると思うが
0754nobodyさん2011/01/30(日) 17:20:31ID:???
>>753
sql直書きなしではできないでしょ?
0755nobodyさん2011/01/30(日) 17:37:29ID:???
>>750
webmoneyでよければ1000円でお願いします
0756nobodyさん2011/01/30(日) 18:20:56ID:???
早くしろ!!!!!!!!!!!!!!!!!!
0757nobodyさん2011/01/30(日) 18:36:16ID:???
>>754 みたいな理解の浅いやつばっかなんだろうな
0758nobodyさん2011/01/30(日) 18:56:34ID:???
>>754
ヒント foreignKey
0759nobodyさん2011/01/31(月) 00:12:36ID:???
教えすぎw
0760nobodyさん2011/01/31(月) 01:31:57ID:???
せいかい foriegnKey
0761nobodyさん2011/01/31(月) 10:56:41ID:???
テスト
0762nobodyさん2011/01/31(月) 10:58:06ID:???
HtmlHelperのlink()でhttpsなURLってどうやって生成するんですか?
0763nobodyさん2011/01/31(月) 11:04:27ID:???
俺はcakephpでHello worldを表示する方法を聞いておるのだ
0764nobodyさん2011/01/31(月) 14:08:21ID:???
超マジレス。↓のようにファイル作成すれば出来る。

// app/controllers/test_controller.php
class TestController extends AppController{
var $name = 'Test';
var $uses = array();
function index(){
$this->set('message', 'Hellow world');
}
}

// app/views/test/index.ctp
<?php echo $message; ?>


教えたから1000円くれよ。マジで。
0765nobodyさん2011/01/31(月) 14:49:03ID:???
マニュアルにチュートリアルあんだろが・・・
0766nobodyさん2011/01/31(月) 15:05:54ID:???
>>762
$html->link('https', 'https://example.com/');
0767nobodyさん2011/01/31(月) 15:38:21ID:???
>>764
温かい思いやりに感謝する
0768nobodyさん2011/01/31(月) 19:45:54ID:???
>>754
既存DBとの接続には同じテーブルであっても取得したいデータに応じて
primaryKeyだけを変更したモデルを必要数つくればいいよ。
0769nobodyさん2011/01/31(月) 21:37:02ID:???
>>764
せっかくなら model も使おうぜ
0770nobodyさん2011/01/31(月) 22:47:22ID:???
マジレスするとAPP/werbroot/index.phpの中身をhello worldにすればよい
0771nobodyさん2011/01/31(月) 23:05:12ID:???
debug('heloo world');
じゃだめ?
0772nobodyさん2011/01/31(月) 23:26:01ID:???
フレームワークを使う意味からはずれてますね
0773nobodyさん2011/02/01(火) 00:12:31ID:???
しかしほんとCakePHPはググっても古い記事ばっかりだな。
おまいらはブログ書いたりしてないの?
0774nobodyさん2011/02/01(火) 00:13:33ID:???
俺ももう誰も使ってないのかと思うぐらい、古い記事しか出なくて困った。
使ってないのか?
0775nobodyさん2011/02/01(火) 00:21:29ID:???
昔は書いていたが・・・
・書こうと思った記事がすでに書かれていた
・cakeが安定してきたので書くことが無くなった
・書いてもあんまり反応が無いので寂しい
という感じで、1年くらいは書いてないな
古い記事ばかりだというのなら、それを1.3で検証する企画とかやればウケるかな?

でも、最近ならアドベントカレンダーやってたし、知的好奇心をくすぐられるような記事もあったんでは?
0776nobodyさん2011/02/01(火) 01:42:48ID:???
とりあえずfindAllの説明をしている記事はもう全部消して欲しいw
0777nobodyさん2011/02/01(火) 01:52:28ID:???
自分用の備忘録も兼ねてブログに書いてたけど、
使いこなしちゃうと面倒で書かなくなっちゃったごめんね。
0778nobodyさん2011/02/01(火) 09:41:14ID:???
俺も最初はtwitterで適当につぶやいてたが、
そのうち表現したい事が140文字で書けなくて止めた。
かといってブログ書くのは怠いし、面倒だから断念した。
0779nobodyさん2011/02/01(火) 12:06:37ID:???
1.3のページングで質問です。

ビューに
if ($paginator->prev()) {
echo $paginator->prev('戻る');
}

と書いて、戻り先がある場合はリンクが貼られる事を想定していたのですが、
実際は上記のようなコードの場合、リンク無しの「戻る」が表示されます。
true/falseだけ返り値を受け取る事は出来ないのでしょうか?
0780nobodyさん2011/02/01(火) 12:32:52ID:???
俺は使ったことないけど
hasPrev($model = null) hasNext($model = null) hasPage($model = null, $page = 1)
があるぞ。

https://github.com/cakephp/cakephp/blob/1.3.7/cake/libs/view/helpers/paginator.php#L435
0781nobodyさん2011/02/01(火) 13:17:51ID:???
>>780
ありがとうございます。hasPrevやhasNextを使って
前/次のリンクがあるか調べます。
0782nobodyさん2011/02/02(水) 16:07:14ID:???
簡単な企業サイトをcakephpでどうやって構築するのか知りたいのでzipでください
0783nobodyさん2011/02/02(水) 16:21:15ID:???
BaserCMSで作ればいいんじゃないか
zipはココttp://basercms.net/packages/download/basercms/latest
0784nobodyさん2011/02/02(水) 18:15:26ID:???
ライセンスがアレかな
■ このスレッドは過去ログ倉庫に格納されています