【PHP】フレームワーク CakePHP 8ホール目【1.3】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2010/03/18(木) 10:00:59ID:6+kHM8kHCakePHPから派生した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
0643nobodyさん
2010/06/30(水) 20:11:23ID:???modelで
var $useTable = false;
だったかをするとテーブルなくても怒られないけど?
0644nobodyさん
2010/06/30(水) 20:13:05ID:???すまそ
0646nobodyさん
2010/07/01(木) 04:37:27ID:???一応チュートリアルにもあるが、Cakeで始めにはまる落とし穴。
あと>>643とか使えないヤツだから気にするな。
0647nobodyさん
2010/07/01(木) 10:24:02ID:???モデルAのpaginate()の中で
SELECT * FROM a, b, c WHERE a.b_id = b.id AND b.c_id = c.id;
という形のSQLを発行しているのですが、
<th><?php echo $paginator->sort('c.name');?></th>
のリンクをクリックしてもソートされないのです。
モデルAとCはリレーションがないため、
paginate()の$order引数に 'c.name' => 'asc' が入ってこないようです。
どうすればいいでしょうか?
0648nobodyさん
2010/07/01(木) 13:01:04ID:???二度と来るな
0649nobodyさん
2010/07/01(木) 16:03:56ID:???cakeを動かした例はあるでしょうか。
同業者からの依頼でcakeを使う予定なんですが、再利用される恐れがあるため
なんとかできたらと考えてます。
0652nobodyさん
2010/07/01(木) 18:58:02ID:???そのファイルのソース中にリンク、例えばhote.htmlがあると出力したときに
hoge.html?CAKEPHP=681a529c456e8da3f6a2e39219c8f4ca
と言う文字列が必ず付くのですがこれはどうすれば消せますか?
と言うか何のためにリンクに文字列が付いて出力されてるんでしょうか?
0653nobodyさん
2010/07/01(木) 20:23:40ID:???それセッションIDだろ
session.use_trans_sid = 0にするか、セッション使わない設定にしたら?
0655647
2010/07/01(木) 22:49:41ID:???で動的に関連をセットすることでできました。
0656nobodyさん
2010/07/03(土) 02:07:02ID:???ffmpegもインストールしてやってるんだけど
初期から入ってるvideoのサムネイル設定なのに
Medium::make - Invalid instruction `VideoMedium::fitCrop()`.
とかなって死ぬ
なんか設定が足りないのかサポートされてないのか
というかMediaPluginと動画の話題が全然ぐぐってもヒットしないんだけどみんな使わないのかな
0657nobodyさん
2010/07/03(土) 02:44:20ID:???一応書いておくと
filterの指定を↓見たいにしてたんだけど
array('fitCrop'=>array(100, 100), 'convert'=>'image/jpeg')
するとvideoのClassをよむからメソッドがなくて怒られる
まさかとは思ったけど順番変えて最初にconvertおくと
array('convert'=>'image/jpeg', 'fitCrop'=>array(100, 100))
ちゃんと変換してくれました。
スレ汚しすまんです。
0658nobodyさん
2010/07/03(土) 04:16:09ID:???ついでに汚します。寝たかったのにはまって一応解決?したんで
wmvをアップして画像とかflvとかに変換したかったけどできない。
mpgならできたのに・・・ってなって四苦八苦
で、MediaPluginのソースいじることになるんだけど
vendors/......../ffmpeg_video.php
で最初に定義されてるrequire['mimeTypes']の
mswmv
ってのを
ms-wmv
に変更したら動いた。
同じ階層にあるgetid3_video.phpでも同じように定義されてあるんだけど、
そこではms-wmvになってるんだよね。揃えてみたら動きました。
なんかよくわからんが一応解決です。
0659nobodyさん
2010/07/03(土) 07:41:45ID:???PHP自体は理解しており、MVCも理解しているつもりです。
とりあえず学習の定番と言えそうな本家(日本語)のチュートリアルをやってみました。
でもこれだけでは、その後独力でCakePHPの学習を推進していくチカラが得られませんでした。
チュートリアルのつぎのステップとしてお勧めな学習方法を教えてください。
(マニュアルを理解するには、チュートリだけでは知識が浅すぎると感じました)
よろしくおねがいします。
0661nobodyさん
2010/07/03(土) 09:36:37ID:???実際の開発プロジェクトで、みんなadmin routingとか使う?
0662nobodyさん
2010/07/03(土) 09:49:14ID:???チュートリアルをやれば、あとは独力ということですね。
でも、チュートリアルを一通りやっただけで、独力で解決策を見出しながら開発を
進めていくチカラが付いたとは思えないんですけど・・・
CakePHPは習得が簡単だと思っていましたけど、実はかなり敷居が高いのでは
ないかと思ってしまいます。
0664nobodyさん
2010/07/03(土) 10:33:21ID:???何でひっかかってるんだい?
チュートリアル+入門書だけでスタートアップは十分だと思うけどな・・・
0665nobodyさん
2010/07/03(土) 12:03:57ID:???app/tmp/
の中に適当なディレクトリを作って保存する方法で構わないんでしょうか。
他に適切な配置場所があれば教えていただきたいです。
0666nobodyさん
2010/07/03(土) 16:09:42ID:???代替の書き方ってあるんでしょうか?
0667nobodyさん
2010/07/03(土) 16:49:44ID:???cakeの実践アプリケーションの本でも買ったら?
あとはcakeの開発陣の人たちはgitとかで他人のコードを読みまくるのが大切と言ってたと思う
>>665
app/tmp/の中は基本的に消えちゃってもかまわないキャッシュファイルとかの置き場なので
作成したテキスト(がどんなものなのか知らないけど)がそういうたぐいのデータならそこでいいと思う
誰か>>618答えてくれー・・・
0668nobodyさん
2010/07/03(土) 17:39:44ID:???PHPのサンプル本とかで「○○の作り方」ってのを一個一個おさらいしていったらいい
それができれば、あとはcakeの中でそれらをくっつけていくだけでしょ
0669nobodyさん
2010/07/03(土) 21:12:12ID:???チュートリアルをそのまま殆ど写しただけで「終わりました」とか言ってないか?
そりゃ身に付いてるはずがない。
コピペすれば動くんだから、エラーの時の問題解決なんか出来るようになるわけないわな。
1から作るのがまだ辛いなら、チュートリアルアプリをなにか改造してみれ。
画面を増やすとか、レコード(テーブル)にカラム追加するとか、入力チェック追加するとか。
0670nobodyさん
2010/07/04(日) 17:29:17ID:???マニュアルがうんこだから。
非公式のチュートリアルもロクなもんがないしな。
0671nobodyさん
2010/07/04(日) 17:46:20ID:???0672nobodyさん
2010/07/04(日) 18:30:42ID:???お前にとってCakePHPがはじめて使うフレームワークだからだろ。
0673nobodyさん
2010/07/04(日) 19:01:49ID:???0674nobodyさん
2010/07/04(日) 19:19:56ID:???0675nobodyさん
2010/07/04(日) 19:30:42ID:???0676nobodyさん
2010/07/04(日) 19:38:11ID:???と、
フレームワークを既に知っている人向けのチュートリアル
があると、普及が促進されるかもね。
0677nobodyさん
2010/07/04(日) 19:43:15ID:???バッドノウハウ的なもんがちょっと多いかなとは思う
0679nobodyさん
2010/07/04(日) 23:19:50ID:???チュートリアルを終えて、実際のアプリを作っていくうえで
「ここはどうやるんだろう」ということを何回も調べなければならない。
ま、どんなフレームワークでもそうだが、Cakeはチュートリアルが薄すぎる。
>>662が言っているのもそういうことだろう。
0680nobodyさん
2010/07/04(日) 23:39:54ID:6la4DkIe実際に開発通じての経験から言うと
フレームワークの設計の難に由来してる問題点も少なくないなと思った
よく知られてる大きなプロジェクトとかが
他のへ移行してしまうのは
やっぱそういった事も関係してるだろうなと思ったよ
0681nobodyさん
2010/07/05(月) 00:27:13ID:???遠回りかもだけど、それぞれの似ているようで違う仕組みだから、より理解しやすいかも。
そして、CakePHP以外に合うものが見つかるかも。
0682nobodyさん
2010/07/05(月) 01:12:10ID:???Javaの何かと比べると、覚える事が意外と少ないな、という印象なんですが・・・
0683nobodyさん
2010/07/05(月) 01:19:57ID:???簡単な手順で作れるよね。
手を入れようとすると大変だけど。
0684nobodyさん
2010/07/05(月) 03:55:03ID:???ぐぐればたいてい解決してる
0686nobodyさん
2010/07/05(月) 12:20:49ID:???レンダリングしたものを、ファイル出力するシェルプログラムを組みたいのですが…。
0687nobodyさん
2010/07/05(月) 12:56:52ID:???http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=1774&forum=3
これでどう?
0688nobodyさん
2010/07/05(月) 16:54:56ID:???0689nobodyさん
2010/07/05(月) 17:52:47ID:???0690nobodyさん
2010/07/05(月) 18:02:13ID:???0691nobodyさん
2010/07/05(月) 20:02:09ID:???0692nobodyさん
2010/07/05(月) 20:37:48ID:???0694nobodyさん
2010/07/05(月) 21:17:00ID:???http://api.cakephp.org/view_source/html-helper/
オプションなかったら継承してtag書き換えるとか勝手にしろやアホ
0695nobodyさん
2010/07/05(月) 23:22:21ID:???0696nobodyさん
2010/07/06(火) 00:53:44ID:???説明不足ですまん、ソース追ったけど見つけられなかったんだ
継承して書き換えもいいけど、末尾の3文字削って>付け足すわ
0697nobodyさん
2010/07/06(火) 11:07:43ID:???複数タスクが走っている場合に
別のタスクのidを取得しちゃう可能性がある。っていう記述を
見つけてしまったんですが、
対処方法はどういったやりかたが考えられますか?
0698nobodyさん
2010/07/06(火) 11:24:19ID:???糞だな
0699nobodyさん
2010/07/06(火) 11:26:35ID:???0700nobodyさん
2010/07/06(火) 11:40:57ID:???でググったらでてきました
0701nobodyさん
2010/07/06(火) 12:03:46ID:???0702nobodyさん
2010/07/06(火) 12:56:26ID:???こちらです
0703nobodyさん
2010/07/06(火) 13:57:00ID:???0704nobodyさん
2010/07/06(火) 14:58:46ID:???0705nobodyさん
2010/07/06(火) 15:01:58ID:???p..64で本のように表示できなくなりました。どなたかp62-64の
誤りを教えてください。スクリプトは付属CDのをそのままコピーしている
のですが・・・
0706nobodyさん
2010/07/06(火) 15:03:52ID:???sendform画表示されてエラーになってしまいます>__<
0707nobodyさん
2010/07/06(火) 15:06:25ID:???どう表示されているかぐらい書こうや
0708nobodyさん
2010/07/06(火) 15:11:06ID:???質問の仕方を教えてやってるだろうが。
706もそうだが、聞きたいならどの情報に対して、何をしたらどういう状況になってるかくらい書け。
答えられるかは別問題だ。
0709nobodyさん
2010/07/06(火) 15:18:17ID:???error: SendFormContoroller could nat be found.
です
http://localhost/cake/sample/hello/sendForm?text1=なんたら(UTFコンバートされた文字列)
というURLが表示されるところ
hello/
が欠けたURLが表示されてエラーになるのです。
index.ctp
で<form method="get" action="/sendform">
と送っているのですが、hello_contorollerのfunctionで sendformが定義されているのですが、
sendform_controllerがないとエラーがでています。・・・・
0710nobodyさん
2010/07/06(火) 15:20:44ID:???でした。解説はこのコードを前提に修正していく記述なので止まってます。
0711nobodyさん
2010/07/06(火) 15:22:33ID:???0712nobodyさん
2010/07/06(火) 15:26:23ID:???○<form method="get" action="/sendform">
0713nobodyさん
2010/07/06(火) 15:27:06ID:???すまん
×<form method="get" action="/sendform">
○<form method="get" action="./sendform">
/sendformの前にドットを入れてみる。
0715nobodyさん
2010/07/06(火) 15:28:37ID:???です。たびたび申し訳ないです。
これをaction="./hello/sendForm">
にしてもだめなのです・・・
0716nobodyさん
2010/07/06(火) 15:35:38ID:???どっとなし。
これでもだめ??
0717nobodyさん
2010/07/06(火) 15:36:27ID:???勝手にふたつのレスを合わせるな
.sendForm
or
/hello/sendForm
でどうかと>>713と>>714でそれぞれ言われている
そして、その場合、アクション名は sendForm() なんだろうね?
0718nobodyさん
2010/07/06(火) 15:36:53ID:???0719nobodyさん
2010/07/06(火) 15:37:14ID:???0721nobodyさん
2010/07/06(火) 15:39:08ID:???HelloControllerで定義しているfunctionは
index()と sendForm() です。
0723nobodyさん
2010/07/06(火) 15:42:43ID:???をどんなファイル名にしてどこで表示させればいいのでしょうか?
0725nobodyさん
2010/07/06(火) 15:46:51ID:???こんなのほっとけ
0726nobodyさん
2010/07/06(火) 15:47:09ID:???debug( $this->webroot ); と表示されてしまいます>__<
0727nobodyさん
2010/07/06(火) 15:54:51ID:???うまくいかないなら「cakephp debug」でぐぐって、まず指示されたことが何かを理解しようとしなきゃ
0728nobodyさん
2010/07/06(火) 15:56:38ID:???ほっとけって
0729nobodyさん
2010/07/06(火) 16:04:38ID:???>>697の質問でソースの出所が必要とは思わないがな
んな堂々と「答えられるかは別問題だ」とか言われてもw
0730nobodyさん
2010/07/06(火) 19:05:49ID:???0731nobodyさん
2010/07/06(火) 19:45:35ID:lebgmiXfビュー側でのタスクのインターバルを変更したいのですが
この場合、$_POST('a')で受け渡せるのですが、もっとスマートに渡せる方法は
あるでしょうか?
また、コントローラのアクション内で、変数を使用すると動作はするもののUndefined・・・
未定義警告が出てしまいます。そもそも変数はどの場所でどのように、定義したら
いいのでしょうか?
アクション内で、$_POST('a')を使用して未定義警告をださないにはどうしたらいいですか?
0732nobodyさん
2010/07/06(火) 20:01:51ID:???秀和のcake本の1.3対応版か
前回のはレビュー良かったけど、すぐ売り切れだか絶版になってて実物見たこと無いわ
0733nobodyさん
2010/07/06(火) 22:56:11ID:???なかなか丁寧な解説でよさげ
0734nobodyさん
2010/07/06(火) 23:32:09ID:???slug生成に問題出るみたいね
CakePHP 1.3のキャッシュやスラッグ(Inflector::slug)に要注意 - (DxD)∞
http://dxd8.com/archives/209/
0735nobodyさん
2010/07/06(火) 23:53:22ID:???0736nobodyさん
2010/07/07(水) 20:45:57ID:6d/8d4Je未定義警告ですが仕方ないので、issetで判定して処理して消しました。
0737nobodyさん
2010/07/07(水) 21:18:42ID:???何故なら改修の場合は大抵DBにまで手は入れないから。
0738nobodyさん
2010/07/07(水) 21:58:43ID:???まあ改修案件でわざわざCakePHP使うとこはないだろうが。
0739nobodyさん
2010/07/07(水) 22:33:30ID:???FW使ってないシステムに後からFW突っ込むことなんて
Cakeに限らずできないと思うが
0740nobodyさん
2010/07/07(水) 22:42:44ID:???0741nobodyさん
2010/07/07(水) 23:10:09ID:???0742nobodyさん
2010/07/08(木) 01:27:22ID:jw2HbYMj1.3.2をダウンロードしまして、coreの設定だけを変えて
Viewに「Hello World」と表示する簡単なページを出力させたのですが、
読み込みに2,3秒かかります。
ローカルのWindowsXP・PHP5.2.5上でテストしているのですが、
何か早く処理させる方法ってあるのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています