【PHP】フレームワーク CakePHP 5ホール目【v1.2】
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん
2008/12/19(金) 15:52:19ID:ylogT+7chttp://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
cookbook(マニュアル)
http://book.cakephp.org/ja
the Bakery
http://bakery.cakephp.org/
■日本語フォーラム
http://cakephp.jp/
■過去スレ
【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/
0815nobodyさん
2009/02/19(木) 21:05:17ID:???HABTMにしてる。memberが1,2,3、projectがA,Bとする。
・project Aにmember 1,2が関わり、
・project Bにmember 2,3が関わる。
この状態で、project Aのmemberを1,3にすると、
project Bに関わるmemberから、member 2が消えてしまう。
たぶん自分が悪いんだろうと思うのだけど、
素朴なHABTMモデルなので、理由が分からず。。。
0816nobodyさん
2009/02/19(木) 21:12:05ID:???0817nobodyさん
2009/02/19(木) 21:56:13ID:???0819nobodyさん
2009/02/19(木) 22:05:03ID:???0820nobodyさん
2009/02/19(木) 22:12:17ID:???0821nobodyさん
2009/02/19(木) 22:21:22ID:???「Cakeで作ってます」って表示する方が
セキュリティのリスクが高くなるじゃん。
0822nobodyさん
2009/02/20(金) 00:20:06ID:???0823nobodyさん
2009/02/20(金) 00:40:30ID:???0824nobodyさん
2009/02/20(金) 00:45:27ID:???0825nobodyさん
2009/02/20(金) 00:52:40ID:???0826nobodyさん
2009/02/20(金) 01:01:35ID:???815です。まさにそれでした。
'unique'=>false、とすると、大丈夫なんですね。
助かりました。ありがとう。
# trueがデフォルトらしいけど、trueの使い方が分からない。。。
0827nobodyさん
2009/02/20(金) 01:07:11ID:???この流れは秀逸。
そーっすねというありきたりな発言から、最終的には村上ジョージになってしまうという。
0828nobodyさん
2009/02/20(金) 01:39:48ID:???if (!empty($this->data))...
みたいに判定するのがなんか気持ち悪いんですが、
みなさんどうしてます?
RequestHandlerとか使えばいいのかな?
0829nobodyさん
2009/02/20(金) 03:22:14ID:???0830nobodyさん
2009/02/20(金) 10:08:57ID:???思いつきだけど
オレオレComponent(かapp_controller)でチェックするのもよいかも
if ( $this->Ore->isPost() ) ...
入力補完が効く分、良いかな?
0831nobodyさん
2009/02/20(金) 10:22:41ID:???・・・って今更か。
0832nobodyさん
2009/02/20(金) 15:23:39ID:???0833nobodyさん
2009/02/20(金) 18:16:44ID:???reserfにされた。あほー
これ、どうしたらいいと思う?
1)複数形のルールを書いてbakeし直す
2)reserf→reserveに自分で全部書き直す
3)そのまま使う
0835nobodyさん
2009/02/20(金) 19:15:41ID:???0836nobodyさん
2009/02/20(金) 19:16:04ID:???0838nobodyさん
2009/02/20(金) 19:29:22ID:???RoRはあんまり触ったことがないんだよね。
チュートリアルやってみた感じだと、cakePHPと似てるみたいだけど。
0840nobodyさん
2009/02/20(金) 21:11:09ID:???0841nobodyさん
2009/02/20(金) 22:04:37ID:???0842nobodyさん
2009/02/21(土) 00:44:11ID:???1.1は重すぎる。
0843nobodyさん
2009/02/21(土) 00:56:54ID:YnbiMze9PHPのメモリーリミット(8M)に引っかかってエラーになってしまいます。
ローカル環境ならPHPのメモリー設定すれば使えるんですが、
本鯖は設定がいじれないので困ってます。
Qdmail使ってる方はそんなにメモリー食いませんか?
なんか軽く使えるような設定あるんでしょうか?
0844nobodyさん
2009/02/21(土) 01:29:06ID:???用心のためのリミット。
ソフトウェアから簡単に上限を変更できる。
まあ共有サーバーでしょうから節度を守った使い方をするように。
0845nobodyさん
2009/02/21(土) 02:30:33ID:YnbiMze9レンタル鯖で、php.iniや.htaccessではダメだったんですが、
phpの中からメモリ設定してやればOKでした。ヒントどうもありがとう。
0846nobodyさん
2009/02/21(土) 08:15:24ID:???Qdmail使っているけどひっかかったことはないし、Qdmailというより、そこまでの処理だとかメールの内容とかの問題のように思うが。
0847nobodyさん
2009/02/21(土) 11:34:41ID:???メール本文は当然、タイトル(見出し)、送信者名の日本語が絶対文字化けしない。
CakePHPで安心して日本語メールが送れる。
Qdmailの使い方 CakePHPでのメール送信
http://hal456.net/qdmail/cakebase#c
※CakePHP1.2から「Emailコンポーネント」が標準装備されたが、日本語メール送信
には少々難あり。残念!
0848nobodyさん
2009/02/21(土) 15:29:15ID:???問題ある部分の文字コードなどを変換して送信とかしてる。
必要な部分しか対応していないけど。
0849nobodyさん
2009/02/21(土) 17:11:38ID:???問題のある部分ってどこなの?
to , from , subject であってる?他もある?bodyとか
結局Qdmail使ってるんだけど、本当はMailComponent使いたいんだよね。
0850nobodyさん
2009/02/21(土) 17:37:44ID:???0851843
2009/02/21(土) 17:49:16ID:???そうですか。使い方はいたって普通というか、Qdmailのサイトに乗っている通りの使い方です。
例えば、users_controllerで登録したユーザーにメールを出すという感じの使い方で、
var components = array('Qdmail'); として、
function _sendusermail() みたいに関数にして作ってます。
でも、users/index みたいにQdmailを使わないアクションを呼び出しても、
メモリエラーが出ます。var components からQdmailを外すとエラーは出ません。
ので、Qdmailを読み込んだ時点でメモリを凄く食ってるのかな。と思ってるのですが。
とりあえず、ini_set("memory_limit", "-1"); とやって制限を外すことで動きました。
0852nobodyさん
2009/02/21(土) 18:00:40ID:???CakePHP1.2のEmailコンポーネントは、
ファイル添付で、日本語ファイル名もNGじゃなかったかな?
Qdmail使っとく方が悩まなくて良いと思うけどなあ?
なぜ、EmailComponent使いたいの?
0853nobodyさん
2009/02/21(土) 18:14:23ID:???CakePHP 1.2.0.6311-betaの08/02/21のEmail Componentの調査報告
p.19〜p.28に日本語メールの事が書いてある。
http://handsout.jp/slide/225
0854nobodyさん
2009/02/21(土) 23:31:08ID:???他の、例えばpagenatorの変数と干渉せずに、追加して、
取得するには、どうしたら良い?
0856nobodyさん
2009/02/22(日) 00:50:22ID:???当たり前かもしれませんが・・・
アクションに渡すパラメータが先で、
namedに入れるのはurlの最後ですよね?
0857nobodyさん
2009/02/22(日) 04:45:42ID:???/model/view/1
とかして、
function view($id) {
で$idを取得せずに、
/model/view/id:1
function view() {
$id = $this->params['named']['id'];
みたいにして取得した方が無難?
0858nobodyさん
2009/02/22(日) 10:08:35ID:???それで出力はeucJP-winからUTF-8にして、保存はUTF-8からeucJP-JPにしたいのですが、何か良い方法はありませんか。
0859nobodyさん
2009/02/22(日) 10:18:13ID:???つ http://book.cakephp.org/ja/view/40/
encoding
0860nobodyさん
2009/02/22(日) 10:19:25ID:???ググったら、「pagenator使う時にはGETのパラメータは
無効になる」って書いてる所があったけど。
試してみたら、
/model/view/sort:id/1とか、間に他のパラメータが入ってても、
viewのアクションの引数に1が渡ってた。すごい。
そうすると。$html->link()で、urlに'id:1'とかを挿入する
スマートな方法があれば良いんですけど。
$named='/id:'.$id;
echo $html->link('Enter', '/pages/home'.$named, $htmlAttributes);
みたいに書き替えて行かないとダメですかねぇ?
$htmlAttributesに追加する方法とかありますか?
0863nobodyさん
2009/02/22(日) 13:17:59ID:V5qtKih8そうだよねえ。database.phpの設定はujisで、
encodingでハンドリングするんだよねえ。
0865nobodyさん
2009/02/22(日) 13:33:04ID:???database.phpのencodingをutf8にすると、内部でSET NAMEされているようで表示は問題ありません。
ただ、それだと保存したときに新JISが登録出来ないので、database.phpの設定をujisにして、ビューに渡すデータはeucJP-winからUTF-8にして、モデルに渡すデータはUTF-8からeucJP-winにしたい、ということです。
紛らわしくてすみません。
0866nobodyさん
2009/02/22(日) 15:38:22ID:n5m/3HJ0railsの方が断然はやいよ。測定するまでもない。数倍違うから体感できる。
0867nobodyさん
2009/02/22(日) 16:08:49ID:???よく分かってないけどDBの文字コードは変えられないという仮定で。
一般的には、beforeSaveとafterFindで変換だけど、それじゃだめってこと?
0869nobodyさん
2009/02/22(日) 19:20:17ID:mjuU1FsC$useTable = false;
しても、バリデーションしようとするとDBエラーが出るよ・・・(;´Д`)
0870nobodyさん
2009/02/22(日) 19:27:43ID:???0871nobodyさん
2009/02/22(日) 19:32:35ID:???http://cakephp.jp/modules/newbb/viewtopic.php?post_id=2771&topic_id=1317&forum=6
柔軟性のないFWだなあ…
0872nobodyさん
2009/02/22(日) 19:56:41ID:???0873nobodyさん
2009/02/22(日) 20:31:34ID:???モデルでやったほうがいいのかね?
コントローラー?
0875nobodyさん
2009/02/22(日) 21:09:32ID:???どちらがベターかと言えばModelだろうねえ
Controller(やComponent)でやるほうが簡単だったりするがMVC的にM
でもオレオレ解は、確認画面つくらないなら、Javascriptでやる
0877nobodyさん
2009/02/23(月) 04:12:40ID:???モデルに一票。trimビヘイビア作るのもいいかもしれない。
ところで 自分は euc-jp で何度も痛い目あってutf-8オンリーでここ数年プログラムやってるけど
euc-jp で組んでる人ってなぜeucなの?
0878nobodyさん
2009/02/23(月) 07:01:24ID:???今まで(今でも)euc-jpで書かれたベタのPHPアプリが多く、php.iniがeuc-jpになって
いて変更出来ない。utf-8用サーバをもう一つ立てる事は費用対効果が許してくれない。
みんなPHPからCakePHPへ移行するのを面倒がる。メンテが主で、新規は少ないんだから
PHPのままでいいんじゃんとみんな消極的。(Cakeで作ったものを見ると、やっぱFWは
良いねえとは言うけど)
0879nobodyさん
2009/02/23(月) 07:58:49ID:???ttp://cakephp.jp/modules/newbb/
0880nobodyさん
2009/02/23(月) 07:59:36ID:???0882nobodyさん
2009/02/23(月) 09:10:43ID:???0883nobodyさん
2009/02/23(月) 09:26:12ID:???対応したエンジニアが居れば良いだけ
0884nobodyさん
2009/02/23(月) 09:41:24ID:???0887nobodyさん
2009/02/23(月) 17:39:27ID:???非常に強力でありがたいが。関連が複雑になる(数が増える)と
hasOneやbelongToなどがどこまでデータを持ってくるのか、
未だに把握できてない。
簡潔明瞭に説明してくれてる所はないものか。
0888nobodyさん
2009/02/23(月) 18:58:53ID:???テーブルにfirst_nameとlast_nameというカラムがある場合、この二つを結合した値をセレクトボックスのラベルとして表示したい時はcombineを使うしかないんですかね?
railsだともっと簡単にできるんでしょうか・・・。
0891nobodyさん
2009/02/23(月) 20:15:25ID:???この時PHPのプログラムはコントローラに当てはまるんですかね?
また、どのディレクトリに置けばいいんでしょうか?
0892nobodyさん
2009/02/23(月) 21:32:43ID:???参照する時って、addressモデルにアソシエーションが書いてあれば、
prefectureモデル(model/prefecture.php)って作らなくても大丈夫?
0893nobodyさん
2009/02/24(火) 00:07:55ID:???cakeのアクションとして呼び出すならコントローラだし、
cakeと全然関係ないならvendorsとかにいれとけばいいのでは。
0896nobodyさん
2009/02/24(火) 08:00:04ID:???0898nobodyさん
2009/02/24(火) 08:50:43ID:???loginした時間をデータベースのusersに記録したいのですが、
その処理はどこに書いたらいいんでしょう?
usersのloginアクションは認証前には来るけど、
認証が成功するとそれぞれのページに飛んでしまう。
login成功後(だけ)に処理させてくれる場所が分からない。
0900nobodyさん
2009/02/24(火) 10:03:12ID:???0902nobodyさん
2009/02/24(火) 12:21:07ID:???0903nobodyさん
2009/02/24(火) 14:37:24ID:???function beforeFind($qd) {
$qd['conditions'] = 'delete_flag = 0';
return $qd;
}
こうすると、delete_flagが0の物しかfindされません。
普段はこれで良いのですが、まれにdelete_flag =1
のデータも検索したい時には、どうしたら良いでしょう?
0905nobodyさん
2009/02/24(火) 15:55:29ID:???有効のようですね。ありがとうございます。やってみます。
やりはじめたのですが。なんとなく、設定を解除しながら
使うよりも、そのつど設定した方が簡単なような気がして
きました。
どこにどのように設定されているか確認しながら解除する
必要があるため、厳密にやるとちょっと面倒。
0906nobodyさん
2009/02/24(火) 17:53:07ID:???0907nobodyさん
2009/02/24(火) 17:54:24ID:???0909nobodyさん
2009/02/25(水) 09:37:56ID:???action属性が付かなくするにはどうすればいいですか?
0911nobodyさん
2009/02/25(水) 09:50:02ID:???書くのが基本なんだろうけど、ユーザーがブラウザ
から変更できると良いこともあるので、どこかに
設定ファイルを持ちたいのだけれど。
どこに、どういう形で置くと、無駄が少ないだろう?
データベース?に配列ごとぶち込む?
設定ファイルに書くとしたらどこに、どんなふうに?
Cake流のやり方とかありますか?
レス数が900を超えています。1000を超えると表示できなくなるよ。