1 名前:nobodyさん mailto:sage [2011/11/09(水) 01:05:10.60 ID:???] CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ 質問するときはCakePHPのバージョンを書きましょう ※他フレームワークとの比較等はスレ違いです テンプレは>>1-5 くらい ■本家 www.cakephp.org/ APIドキュメント api.cakephp.org/ the Bakery bakery.cakephp.org/ CakeQs cakeqs.org/ CheatSheet (PDF) cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf github - cakephp github.com/cakephp ■日本語公式 cakephp.jp/ フォーラム cakephp.jp/modules/newbb/ cookbook(マニュアル) book.cakephp.org/ja 前スレ 【PHP】フレームワーク CakePHP 12ホール目【笑】 hibari.2ch.net/test/read.cgi/php/1309505626/
761 名前:nobodyさん mailto:sage [2012/03/12(月) 18:10:15.80 ID:???] ビューで変えてます。携帯用の画像とか。
762 名前:nobodyさん mailto:sage [2012/03/12(月) 19:45:42.19 ID:???] >>759 1は好きにしたらいい 2はインデックス当たらなくていいならできる
763 名前:nobodyさん mailto:sage [2012/03/12(月) 19:58:56.46 ID:???] >>762 どうやって検索するのでしょうか? 1カラムにカンマ区切りのレコードがあったとして、 それをCakeのconditionsで検索する方法がわかりません
764 名前:nobodyさん mailto:sage [2012/03/12(月) 21:01:20.27 ID:???] >>763 cakephpに配列をシリアライズして 登録するプラグインあるから、それ使え。
765 名前:nobodyさん mailto:sage [2012/03/12(月) 21:33:33.63 ID:???] わかりました。探してみます
766 名前:nobodyさん mailto:sage [2012/03/12(月) 21:53:31.19 ID:???] >>763 SQLのLIKEはわかってんのかな?
767 名前:nobodyさん mailto:sage [2012/03/12(月) 22:27:22.65 ID:???] 小一時間探しましたが、save時にシリアライズできるものの、 find時にconditionsで絞り込むのは無理みたいですね・・。 >>766 はい。それは分かりますが、登録されている値が 「1,10,11」みたいな場合、likeは利かないと思います。
768 名前:nobodyさん mailto:sage [2012/03/12(月) 23:32:17.51 ID:???] >>756 >>757 ありがとうございます。 サーバサイドのJSでの実装を考えているため、種が漏れることはないと考えています。 ご回答/ご指摘ありがとうございました。
769 名前:nobodyさん mailto:sage [2012/03/12(月) 23:45:06.08 ID:???] >>767 ソート順さえあっていれば、1かつ10かつ11なら column LIKE '%1,%10,%11,%' とかでいけるんじゃないの ソートしてないのなら column LIKE '%1,%' AND column LIKE '%10,%' AND column LIKE '%11,%'
770 名前:nobodyさん mailto:sage [2012/03/12(月) 23:58:59.56 ID:???] >>769 さすがにひどい。 >>767 方法1.「ビット演算 チェックボックス」でぐぐれ。 方法2.項目ごとにカラムを分ける。
771 名前:nobodyさん mailto:sage [2012/03/13(火) 02:48:15.55 ID:???] 脆弱性対策は大事だよ www.1x1.jp/blog/2012/03/mass_assignment_vulnerability_cakephp.html
772 名前:nobodyさん mailto:sage [2012/03/13(火) 10:18:36.45 ID:???] >>767 もっと頭使おうぜ 1,10,11 ではなくて 001,010,011 みたいにすれば、like %001% で検索できるだろ。 あくまで1例だから、データに何がくるかによって 良い実装があると思うので、よく考えて。
773 名前:nobodyさん mailto:sage [2012/03/13(火) 12:48:03.37 ID:???] 俺ならHABTMにしちゃうね
774 名前:760 mailto:sage [2012/03/13(火) 13:20:03.94 ID:???] >>761 ビューが条件分岐だらけになりませんか? if (!empty($post['Post']['image_filename']): .... else: こんな風に。 $post->getImageUrl(array('mobile' => true)); みたいに書けたらいいんですけどねぇ・・・
775 名前:nobodyさん mailto:sage [2012/03/13(火) 13:39:42.66 ID:???] >>774 Helperつくれば?
776 名前:nobodyさん mailto:sage [2012/03/13(火) 13:45:55.38 ID:???] >>775 そうなんですけど、 モデルの返り値が配列じゃなくてエンティティなら、 もっとスマートに書けるのに、と思いまして・・・ これがCake流なんですかね
777 名前:nobodyさん mailto:sage [2012/03/13(火) 13:53:09.13 ID:???] >>772 その考えはありませんでした。勉強になります! ビット演算の事を>>770 さんから教えていただき勉強しましたが、 数学が苦手な私の頭ではさっぱりで、 単純にテーブルを分ける(Cake的にhasMany)を考えていました。 テーブルを分けて正規化する方法も一般的なようですが、 正直、チェックボックスを使用するカラムが必要な度に テーブルを生成するのもどうかと思い、悩んでいました。 772さんの方法も視野に入れて設計面を工夫してみます。 みなさん、ありがとうございました。
778 名前:nobodyさん mailto:sage [2012/03/13(火) 22:24:16.17 ID:???] likeなんか使ったらインデックス使えなくて 遅くなるだろw
779 名前:nobodyさん mailto:sage [2012/03/13(火) 23:03:53.03 ID:???] >>776 エンティティが返ってこないのが俺がCakeが嫌いな理由の一つではある。
780 名前:776 mailto:sage [2012/03/14(水) 03:34:06.02 ID:???] CakeEntityなんてのもあるみたいですが・・・ 今はYiiを調べてる。
781 名前:大便 [2012/03/15(木) 08:30:03.53 ID:UhuckWxP] ペニー秋田は犯罪です。 早速ペニーオークションで破産しました。
782 名前:nobodyさん mailto:sage [2012/03/15(木) 15:50:54.34 ID:???] >>778 別にLIKE使ったからってインデックス効かなくなるわけじゃないから
783 名前:nobodyさん mailto:sage [2012/03/15(木) 16:11:21.14 ID:???] みなさん、プラグイン作成してます? お問い合わせフォームとか会員専用ページとか どのサイトでもよく使うファイルをプラグインにまとめるべきか否か悩みます。
784 名前:nobodyさん mailto:sage [2012/03/15(木) 20:50:17.13 ID:???] >>782 効かなくなるが
785 名前:nobodyさん mailto:sage [2012/03/15(木) 21:19:00.56 ID:???] >>783 どこまで汎用性もたせるか悩んで、 結局いつもコピペで済ませてる
786 名前:nobodyさん mailto:sage [2012/03/15(木) 21:56:56.36 ID:???] ある程度規模でかいサイトで普通のLIKE検索はありえないよね。
787 名前:nobodyさん mailto:sage [2012/03/16(金) 00:00:22.47 ID:???] 普通はどうしてるの?
788 名前:nobodyさん mailto:sage [2012/03/16(金) 09:41:57.89 ID:???] >>783 俺はまとめてるよ。 ログイン リマインダー 新規会員登録 アフィリエイト機能とか。 うまく作れば使いまわし効く。 全部プラグインでやれるから 最近やることなくなった。
789 名前:nobodyさん mailto:sage [2012/03/16(金) 10:19:44.39 ID:???] >>788 それらをプラグイン化して、サイトによってビューを修正する感じ?
790 名前:nobodyさん [2012/03/16(金) 10:41:05.32 ID:pS4d35yu] ログイン状態のセッションが数時間で切れて困っています。 ログインすると $this->Session->write('user',$user_id); のようにコントローラ内のSessionに情報を保存していますが、これが数時間でread()しても値が取れなくなるようです。 core.php内で Configure::write('Session.save','cake'); Configure::write('Session.timeout', (24*60*60*7)); ini_set('session.gc_probability', 1); ini_set('session.gc_divisor', 1000); ini_set('session.cookie_lifetime', (24*60*60*7)); ini_set('session.gc_maxlifetime', (24*60*60*7)); Configure::write('Security.level', 'low'); としているので、1週間持って欲しいのですがダメみたいです。 何か方法はありますでしょうか。
791 名前:nobodyさん mailto:sage [2012/03/16(金) 20:57:57.62 ID:???] >>789 具体的にいうと、 プラグインの中に ビヘイビアと、コンポーネントを作る。 それをusercontrollerとmodelに読み込ませる感じ。
792 名前:nobodyさん mailto:sage [2012/03/16(金) 20:59:06.57 ID:???] >>790 cookie使えばいいじゃん。 ses切れてても、cookieがあればそれでログインみたい。
793 名前:nobodyさん mailto:sage [2012/03/17(土) 00:04:22.68 ID:???] >>791 なるほど。ビュー周りは特に変更しないんだね。 変更するならCSSをいじるぐらいか。
794 名前:nobodyさん mailto:sage [2012/03/17(土) 19:37:12.80 ID:???] 2.x対応のTreeHelperってないですか? または修正版のサイトとかあれば
795 名前:nobodyさん mailto:sage [2012/03/19(月) 15:45:40.35 ID:???] b.hatena.ne.jp/entry/anond.hatelabo.jp/20120318122617 これって結局安いの高いの
796 名前:nobodyさん mailto:sage [2012/03/19(月) 16:50:34.02 ID:???] Qdmail(hal456.net/qdmail/ )使ってるひといる? さくらインターネットのメールサーバにQdmail使ってSMTP AUTHでメール送信してるんだけど、 何回か(4,5回が多い)に1回だけメール送れないんだよな QdSmtp error: No Responce SYSTEM TIME OUT line -> 603 QdSmtp error: getMessage error line -> 543 QdSmtp error: Error From setting line -> 488 QdSmtp error: Send Data Error or Auth Error line -> 415 Qdmail error: Qdmail Version 1.2.6b ,PHP Version 5.2.11 Qdmail error: OS WINNT ; PHP Version 5.2.11 ; Qdmail version 1.2.6b php.ini status: mb_language = Japanese ; mb_internal_encoding = UTF-8 ; mb_detect_order = ASCII,JIS,UTF-8,EUC-JP,SJIS Qdmail Status debug: 0, log: 3, errorlog: 0 Qdmail error: No send . Because SMTP mail method replied error line -> 2190 Qdmail error: Send Error line -> 2115 Qdmail error: Error happen, see upper line -> 2194 Qdmail error: Send Error line -> 2115 画面にこんなエラーが吐き出されてメール送信されない。 エラー行だって言われてるところを見てもエラー行を出力する処理しか書いてなくて どういうエラーが起こったのか全然わからない・・・。 同じような事になった人いないかな?
797 名前:nobodyさん mailto:sage [2012/03/19(月) 17:26:02.77 ID:???] スレ違い
798 名前:nobodyさん mailto:sage [2012/03/19(月) 17:27:57.85 ID:???] >>797 すまん、一応CakePHPのコンポーネントとして使ってるし、 Cake使ってる人でメール送信する人はこれ使ってる人多そうだからここで聞いてみた PHP質問スレで聞いたが、そこでもスレ違いだとさ・・・。 ライブラリの質問できる場所無いみたいなんだよな
799 名前:nobodyさん mailto:sage [2012/03/19(月) 19:02:54.22 ID:???] >>798 そうじゃなくて、ライブラリ自体、公式でサポートしてるんだから そっち行けってことっでしょ。エラーメッセージすら読めてないし。 フレームワーク以前の問題だ
800 名前:nobodyさん mailto:sage [2012/03/20(火) 05:09:01.21 ID:???] qdmailって、公式もサポートほとんどしてないだろあれ。 エラーメッセージもいいかげんだし。
801 名前:nobodyさん mailto:sage [2012/03/20(火) 09:47:42.67 ID:???] >>800 わかる。
802 名前:nobodyさん mailto:sage [2012/03/20(火) 22:24:51.38 ID:???] じゃ、qdmail使わずに自作しろよ。 メール送信なんて今まで作っていたのあるだろ。
803 名前:nobodyさん mailto:sage [2012/03/20(火) 23:14:24.46 ID:???] ・マルチバイト対応 ・HTMLメール ・添付ファイル こういうの対応しようとすると結構自作でやるのはな、、、
804 名前:nobodyさん mailto:sage [2012/03/21(水) 12:11:52.99 ID:???] いやいや、普通に1000行もかからずコード書けるから。 フレームワーク使う前に作っていたものがあるだろ。それ使えよ。
805 名前:nobodyさん mailto:sage [2012/03/21(水) 18:27:13.50 ID:???] cake使っててシェルでURLを組み立てたいときは何を使えばいいですか?
806 名前:nobodyさん mailto:sage [2012/03/21(水) 20:09:46.98 ID:???] シェルでURLを組み立てたいって意味がわからないんだが
807 名前:nobodyさん mailto:sage [2012/03/21(水) 21:31:40.83 ID:???] >>804 オレオレフレームワークつかっとけよw
808 名前:nobodyさん [2012/03/21(水) 23:19:44.62 ID:ZAI6cSPi] $this->set('select', $this->Foo->find('list', array(//select要素 'fields' => array( 'Foo.id', 'Foo.firstname' ))))); とすると、 $form->select("Foo.bar", array($select), 0, array('empty' => null)) で select要素の中に <option value="Fooのid">Fooのfirstnameの中身</option> というのができるんですが、 これを <option value="Fooのid">Fooのsecondnameの中身 Fooのfirstnameの中身</option> としたいんですが、find('list')は一対でしか使えないんでしょうか? やり方をご教示いただけたら幸いです
809 名前:808 [2012/03/21(水) 23:27:53.96 ID:ZAI6cSPi] 自己解決しました allで読んで、 foreach ($select as $value) { $talent_data[$value['Foo']['id']] = $value['Foo']['secondname'] . ' ' . $value['Foo']['firstname']; } $this->set('select', $select); でlistで作ったoption群と同じ形式のリストデータが生成されました
810 名前:nobodyさん mailto:age [2012/03/22(木) 00:13:00.01 ID:???] modelにrule=>urlを書いたらurl欄が空欄もurlが正しくないになってしまうんですが、 urlが空でもよくて、入っていれば正しいURLか判定する、という風にするやり方がありましたらお教えください
811 名前:nobodyさん mailto:sage [2012/03/22(木) 00:20:23.77 ID:???] allowEmpty
812 名前:nobodyさん mailto:age [2012/03/22(木) 00:35:14.75 ID:???] >>811 ありがとうございます、解決できました!
813 名前:nobodyさん mailto:sage [2012/03/22(木) 02:02:03.59 ID:???] >>806 URLをTwitterに投稿するときに使おうと…
814 名前:nobodyさん mailto:sage [2012/03/22(木) 10:58:28.03 ID:???] >>807 煽る意味がわからん。他人のライブラリは使えないと言い、 自分でも自作できないとかワガママすぎるだろ。
815 名前:nobodyさん mailto:sage [2012/03/22(木) 19:38:50.77 ID:???] >>814 先に煽ったのは>>804 じゃね フレームワークスレで、自分で書いたもん使えて
816 名前:nobodyさん mailto:sage [2012/03/23(金) 00:01:31.13 ID:???] おかしくないだろ。なんでも他人を頼ろうとするなよ。 自分でコンポーネントやヘルパー作れるようになってるんだから。
817 名前:nobodyさん mailto:up [2012/03/23(金) 10:24:37.19 ID:???] up
818 名前:nobodyさん mailto:sage [2012/03/23(金) 11:50:45.97 ID:???] 自分で簡単に組める人はここで質問しないだろ。自分が見落としてるだけで、他のいいモジュールがあるのかも?って淡い期待で書き込んでるんだとおもうよ。自分で組むしか方法が無い。っていう結論を貰えるだけでも嬉しいのでは?
819 名前:nobodyさん mailto:sage [2012/03/23(金) 13:36:50.00 ID:???] なにかおかしくね?自分でプログラミングせずに、 いきなりフレームワーク使い出したというのか? 大体は参考書やらネットの情報やらで適当なプログラム作って、 慣れた後に効率化を求めてフレームワークを使い出すと思うんだが。
820 名前:nobodyさん mailto:sage [2012/03/23(金) 13:42:01.91 ID:???] mail関数やmb_send_mail関数でメール送信しようとして 文字化けしたり、上手く送れなくてネットで調べながら 自分なりの「メール送信ライブラリ」を作ると思うんだが。 で、その後に添付ファイルやらHTMLメールやらを送信したくなって qdmailのような他人が作ったライブラリを探すというのなら分かるよ。 でも、いきなり上記の部分すっ飛ばしてCake使って 「上手く動きません><」とか言われても、勉強不足以外の何者でもないだろ。
821 名前:nobodyさん mailto:sage [2012/03/23(金) 16:25:24.36 ID:???] 仲良くしようぜ。
822 名前:nobodyさん [2012/03/24(土) 15:01:00.43 ID:oSWZUaYy] メール関連の機能が大幅に向上したバージョン2.1を使えばよい。
823 名前:nobodyさん mailto:sage [2012/03/24(土) 18:51:05.67 ID:???] kwsk
824 名前:nobodyさん mailto:age [2012/03/25(日) 01:08:52.69 ID:???] paginatorでクエリを渡そうと思って $paginator->options( array('url' => array('?id=' . $id)) ); とやったんですが、 foo/?id=100/page~1 みたいなurlになってしまってうまく動作できません foo/page~1?id=100 となるようにしたいんですが、optionsをどう書き換えたらいいんでしょうか?
825 名前:nobodyさん mailto:sage [2012/03/25(日) 19:19:28.98 ID:???] >>824 array( '?' => array( 'id' => $id )) って感じじゃなかったかな
826 名前:nobodyさん mailto:sage [2012/03/25(日) 23:49:03.03 ID:???] Router::url(array('controller' => 'test', 'action' => 'index', 'id' => $id)) みたいな事をしてURLを生成しているのですが、 パラメータ部分を予め設定しておく事は出来ないのでしょうか?
827 名前:nobodyさん mailto:sage [2012/03/26(月) 08:08:50.35 ID:???] >>826 ヘルパーでも作る
828 名前:nobodyさん [2012/03/26(月) 18:44:48.32 ID:+fypSFER] フォームヘルパーを使って同じフォームを1ページの二カ所以上に作ると formタグのidが重複しちゃうけど、どうやって回避するのがスマートかな 今はform->createでid指定して別名にしてるけど、あまりスマートに思えない
829 名前:nobodyさん mailto:sage [2012/03/26(月) 19:11:54.92 ID:???] フォームヘルパーってぶっちゃけ要らない機能だよね 最初は便利なのかなと思ったけどしばらくいじって思い通りにいかないから ないものとして普通にformタグ書くようにしたら能率上がったわ
830 名前:nobodyさん mailto:sage [2012/03/26(月) 23:14:30.50 ID:???] >>829 確認の時どうしてるんだ?次のページに推移して「エラーがあります」か?
831 名前:nobodyさん mailto:sage [2012/03/27(火) 00:49:24.75 ID:???] >>829 いや、使った方がいいよ。 俺もベタ書きやってたけど使わないとエラー処理が困る。
832 名前:nobodyさん [2012/03/27(火) 01:42:43.77 ID:J3nZuwJg] バリデーションエラー時に普通の方法だと エラーが出たフォームの上(下だっけ?)にメッセージが表示されるけど 任意の場所に表示したい場合はどうしてる?
833 名前:nobodyさん mailto:sage [2012/03/27(火) 03:37:14.44 ID:???] <?php echo $form->error('Post.name')?>
834 名前:nobodyさん mailto:sage [2012/03/27(火) 14:05:24.25 ID:???] CakePHPで「INSERT〜ON DUPLICATE KEY UPDATE」 は使えないのでしょうか?使える場合は書き方を押してください
835 名前:nobodyさん mailto:sage [2012/03/27(火) 14:37:07.94 ID:???] CakePHPの質問を書いたら、ちゃんと答が返ってくる掲示板ないでしょうか
836 名前:nobodyさん mailto:sage [2012/03/27(火) 17:57:15.57 ID:???] >>835 cakephpのコミュニティで質問すれば。 cakephp.jp/modules/newbb/index.php
837 名前:nobodyさん mailto:sage [2012/03/27(火) 18:30:51.02 ID:???] >>834 Model -> save()
838 名前:nobodyさん mailto:sage [2012/03/28(水) 22:39:25.33 ID:???] 設計って結構迷うよね・・。 編集でidが2つある場合、URLが/post/edit/1/2 みたいになるけど、これってわかりづらいよね。 ピュアPHPの、edit.php?parent_id=1&id=2の方が分かりやすい気がする。 まぁ、Cakeでは/edit/parent_id:1/id:2 というURLにはなるんだけどさ・・・
839 名前:nobodyさん mailto:sage [2012/03/28(水) 22:40:41.18 ID:???] >>838 ID=一意に表すもの だし1つで表せないとしたらそれはIDじゃない 1つで表せるならURLに含ませる必要ない
840 名前:nobodyさん mailto:age [2012/03/28(水) 23:05:18.11 ID:???] >>839 別々のものに同じidが割り振られているのはおかしいが、 ひとつのものに二つ以上のidが振られているのは問題なくね?
841 名前:nobodyさん mailto:sage [2012/03/28(水) 23:10:52.27 ID:???] >>840 問題ないけど、2つ持たせる意味がわからないし、 仮に持たせたとしてもそれをURLに含ませる意味もわからない
842 名前:nobodyさん mailto:sage [2012/03/28(水) 23:15:51.51 ID:???] >>841 管理画面があったとして、 ユーザID・1が投稿したお知らせのID2を見たいとする。 ピュアPHPなら、edit.php?user_id=1&id=2だよな? Cakeなら/edit/1/2か/edit/user_id:1/id:2だな。 セッションに含めて持ち回る方法もあるけど、 毎回セッションに入れるのはおかしくないか?って思うからさ。
843 名前:nobodyさん mailto:sage [2012/03/28(水) 23:24:56.61 ID:???] edit.php?id=2 じゃだめなの?
844 名前:nobodyさん mailto:sage [2012/03/28(水) 23:32:10.02 ID:???] ピュアPHPだとそれで良いんだよ。でもCakeだと迷うだろ? Cakeの書き方で言えば、 /news/add/1 この1はuser_idの1 /news/edit/2 この2はidの2 URLを見ただけでは混乱する
845 名前:nobodyさん mailto:sage [2012/03/28(水) 23:46:26.83 ID:???] POSTすりゃええやん
846 名前:nobodyさん mailto:age [2012/03/28(水) 23:58:08.70 ID:???] 迷うだろって言われても迷わないよな
847 名前:nobodyさん mailto:sage [2012/03/28(水) 23:59:20.33 ID:???] >>846 ほんとに?自分だけで分かるからOKって考え方なの? ちなみに、/edit/1/2みたいな書き方はBaserCMSでもやってた
848 名前:nobodyさん mailto:sage [2012/03/29(木) 00:03:50.49 ID:???] 自己レスだけど、コーディング時は迷う事はないか。 Router::url('/news/edit/' . $data['Newsr']['userid'] . '/' . $data['News']['id']) になるわけだし。単なるURL上での事ならこだわる必要ないかな。 外部に公開するわけでもないし。
849 名前:nobodyさん mailto:sage [2012/03/29(木) 00:06:24.29 ID:???] >>847 自分だけわかるもくそも、URLの規則を万民にわかるように書くことなんてそもそも無理じゃね?
850 名前:nobodyさん mailto:sage [2012/03/29(木) 00:14:21.30 ID:???] >>849 そうだな。規約に従おうとこだわりすぎてたわ。 自分が作りやすい方法でやるよ。色々ありがとう
851 名前:nobodyさん mailto:sage [2012/03/29(木) 00:19:24.06 ID:???] >>850 URLでなんのページかわかりやすくしようというのは、ユーザビリティの面からも正しい考え方だけど この件に関しては>>844 の書き方で充分わかりやすいといえる範疇だと思う
852 名前:nobodyさん mailto:sage [2012/03/29(木) 04:02:59.81 ID:???] >ピュアPHPなら、edit.php?user_id=1&id=2だよな? >Cakeなら/edit/1/2か/edit/user_id:1/id:2だな。 誰がこんなこと決めたの? Cakeだって/edit?id=1&id=2ってやるだろ。
853 名前:nobodyさん mailto:sage [2012/03/29(木) 10:57:51.78 ID:???] さすがにそれはやらない
854 名前:nobodyさん mailto:sage [2012/03/29(木) 22:50:57.56 ID:???] /edit/parent_id/1/id/2 とか
855 名前:nobodyさん mailto:sage [2012/03/29(木) 23:14:23.59 ID:???] user_idがidから引っ張ってこれるんならURLに含めないな usernameなら/news/tanaka_ichiro/123みたいな感じで含めてもいいと思うけど どうしてもuser_idもidも含めたいのならnamedパラメータ使って/news/user_id:1/id:2とかにする
856 名前:nobodyさん [2012/04/01(日) 00:45:58.67 ID:OiSFrCKx] ブラウザのエンコードの切替ができないんだけど2.x系って特別な設定あるのかな? 1.x系の場合コントローラに function beforeFilter(){ //携帯なら if($this->Ktai->is_ktai()){ Configure::write('App.encoding', 'SJIS'); $this->layout = "mobile_layout"; //charset=shift_jis" }else{ って書けばブラウザのエンコードが既存の「UTF-8」から「SJIS」に切り替わるのに2.x系だと「UTF-8」のまんまだ。。。 かなり嵌ってるんだけど分かる人いるかな? てか俺の環境がおかしいのかな??
857 名前:nobodyさん mailto:sage [2012/04/01(日) 02:38:57.47 ID:???] App.encodingってシステム的なエンコードの設定で、出力のエンコードとは関係ないんじゃないの 設定したことないから知らないが ヘッダーはutf8とsjisどっちなの?
858 名前:nobodyさん [2012/04/01(日) 03:16:24.89 ID:OiSFrCKx] >>857 PCと携帯でエンコードを分岐したくて PC -> UTF-8 携帯 -> shift_jis core.php自体に記述しているのは Configure::write('App.encoding', 'UTF-8'); なんだけど、携帯のページを表示するときは beforeFilterでConfigure::write('App.encoding', 'SJIS'); に変更してます cakephp1.3だとこの設定でブラウザのエンコードはshift_jisに変更されるんだけど 2.x系だとUTF-8のまま。。。 core.php自体をConfigure::write('App.encoding', 'UTF-8');に書き換えると ブラウザのエンコードはshift_jisに代わるんだけどcore.phpだと分岐処理書けないから困っています。 2.x系だと別の処理が必要なのかな?
859 名前:nobodyさん [2012/04/01(日) 03:18:29.30 ID:OiSFrCKx] >>858 >core.php自体をConfigure::write('App.encoding', 'UTF-8');に書き換えると 上記は Configure::write('App.encoding', 'SJIS');の間違いです。 誤植すいません。。。
860 名前:nobodyさん mailto:sage [2012/04/01(日) 17:58:24.58 ID:???] 軽く調べてみたけどApp.encodingは内部コードの設定だからやっぱり出力のエンコードとは関係ないよ ケータイ対応したいならこういう感じに書いたら? webengineerlife.com/2012/02/08/cakephp-pc-mobile/
861 名前:nobodyさん [2012/04/02(月) 00:51:25.23 ID:ZyijX88y] >860 ありがとう ちょっと試してみます。 携帯ライブラリとか使って複雑になってるのも原因の1つかもです。。。
862 名前:nobodyさん mailto:sage [2012/04/03(火) 18:18:51.92 ID:???] cakephpでもhavingが使えるんだな。 そしてhavingってめちゃくちゃ便利だな。 これのお陰でDBの設計が楽になった。
863 名前:nobodyさん mailto:sage [2012/04/04(水) 18:16:19.49 ID:???] フォームヘルパーでのサニタイズは何もしなくても自動でしてくれるけど、 表示(コントローラからset)の場合は、個別でサニタイズしなきゃいけないんだな この点忘れてた・・・
864 名前:nobodyさん mailto:sage [2012/04/05(木) 00:28:36.65 ID:???] 1.2経験しかなかったんだけど初めて2.1使ってみたら ローカルのxampp環境でmodelがbake出来ないんですけど。。 cliのphpが「問題が発生したため・・・」になる
865 名前:nobodyさん mailto:age [2012/04/05(木) 23:35:57.76 ID:???] findの条件で、 テーブルFoosのflagがonのものだけ取り出したいとき、 'conditions' => array( 'Foo.flag' => 'on' ), と書いてできたんですが、 Foosのflagがonでかつ、 Foosのlawと同じ値のBarsテーブルのidの、deleteがoffのもの、というのを条件にしたい場合どう書けばいいでしょうか? 具体的には、 Foosのテーブルには商品リスト、Barsには業者データがあり、 取り扱っている商品、でかつ、倒産していない業者、の商品リストだけ取り出したいのです よろしくお願いします
866 名前:nobodyさん mailto:sage [2012/04/06(金) 01:33:16.23 ID:???] ローカル環境にApach + PHP + MySQLの設定をするのが 面倒なのでレンタルサーバにリモートプロジェクトとしてEclipseでバンドして 作業してるんですが、こういった開発手法ってNGでしょうか?
867 名前:nobodyさん mailto:sage [2012/04/06(金) 11:00:58.23 ID:???] 自分が良ければおkだと思うよ
868 名前:nobodyさん mailto:sage [2012/04/06(金) 11:22:58.85 ID:???] ありがとう。勇気付けられました(?) ローカルとサーバで2度設定をする手間を考えるとやはり 直接サーバ上でコードをいじった方が効率が良いと思うんだよね。
869 名前:nobodyさん mailto:sage [2012/04/06(金) 11:44:34.19 ID:???] >>868 俺もそう思う。
870 名前:nobodyさん [2012/04/07(土) 00:51:33.09 ID:4OZyxrY6] 下記サイトを参考にしCakePHP 2.1.1安定板をダウンロードし さくらインターネットに設定しようと思っているのですがどうしてもうまくいきません。 mori.moripower.jp/eqwip/cakephp/370.html どの部分でエラーが起きているか追いかけてみたところ /home/user_name/www/app1/index.php において、下記判定処理でインクルードに失敗していました。 if (!include(CAKE_CORE_INCLUDE_PATH . DS . 'Cake' . DS . 'bootstrap.php')) { bootstrap.php自体のパスは下記が正の筈なので 直接(べた)書きで試してみましたがやはりダメでした。 (bootstrap.phpの権限を 755に設定してもダメ) /home/user_name/cake/lib/Cake/bootstrap.php どなたか同じ様な体験をされた方はいませんでしょうか?
871 名前:nobodyさん [2012/04/07(土) 01:04:14.05 ID:ET0rgidW] そんなこと今更知ったのか、バカを晒して楽しいか?
872 名前:nobodyさん mailto:sage [2012/04/07(土) 01:11:46.23 ID:???] >>870 それだけ見るとディレクトリ構成を間違えたかindex.phpのパスの設定が間違ってるっぽいけどなあ
873 名前:nobodyさん mailto:sage [2012/04/07(土) 01:52:28.91 ID:???] >>872 >>870 に記載のURL通りに指定しております。 ちなみに bootstrap.php の中では定数等を定義しているだけの様なのですが このファイルの読込は、CakePHPの実行には必須なのでしょうか? また、さくらインターネットにおいて、最新のCakePHPの導入が出来る様に 解説したサイトをご存じでしたらお教えください。 どうも私の方でぐぐってヒットするサイトは 2・3年前の古い物ばかりで最新のCakePHPには即していない様です。
874 名前:nobodyさん [2012/04/07(土) 09:38:19.35 ID:PHPJ9271] 1.3時代からいじっていないから何か違うかもしれないが >bootstrap.phpは必須か? bootstrapは、起動時の設定をまとめたりしてるもんなんで必須なはず おまいさんのスキルが見えないので余計なアドバイスかもしれないがとりあえず、CAKE_CORE_INCLUDE_PATHの内容を調べてみてどうよ?
875 名前:519 mailto:sage [2012/04/07(土) 11:17:18.36 ID:???] >>874 見事なIDを見た
876 名前:nobodyさん mailto:sage [2012/04/07(土) 11:21:45.79 ID:???] 名無しに戻し忘れorz ぬかったわ。。。
877 名前:nobodyさん mailto:sage [2012/04/07(土) 12:05:32.12 ID:???] >>874 定義された内容でもって直接includeしたのですが それでもダメでした。 もうちょっといろいろと試してみます。
878 名前:nobodyさん mailto:sage [2012/04/07(土) 12:43:18.13 ID:???] ちょっと気になっているんですけど CakePHP って途中で開発終了の可能性は他のFWと比べて高いですか?低いですか?
879 名前:nobodyさん mailto:sage [2012/04/07(土) 12:54:05.32 ID:???] 誰にもわからないことだな 1つ言えることは、ZFに比べたら確実に高いということぐらい。。
880 名前:nobodyさん mailto:sage [2012/04/07(土) 13:09:04.61 ID:???] せっかくCakePHPの癖をつかんだとしても 終了してしまったら学習コストの無駄になるのを恐れている。 やっぱしZFの方が無難かな?
881 名前:nobodyさん mailto:sage [2012/04/07(土) 13:23:49.88 ID:???] zendはコンポーネント群にすぎないから、位置づけがCakeとは異なるよな。
882 名前:nobodyさん mailto:sage [2012/04/07(土) 14:05:56.13 ID:???] コストの無駄たって、経営者が新人教育について言ってるんだならまだしも 自分の脳みそのしわを増やすのにコストで考えるのはわからんw 浅く広くでもどれでも触って使えるようになっとけばいいよ
883 名前:nobodyさん mailto:sage [2012/04/07(土) 16:48:09.15 ID:???] とりあえず、俺は1.3をあと2年は使い続ける
884 名前:nobodyさん mailto:sage [2012/04/07(土) 18:01:43.94 ID:???] フォームの確認ページでのサニタイズってどうしてます? $this->dataを一括でサニタイズする処理をするか、 確認ページのビューで<?php echo h($this->data['Post']['name'])?> みたいにするかどちらかだと思っているのですが、 他に良い方法や考え方はありますでしょうか?
885 名前:nobodyさん mailto:sage [2012/04/07(土) 18:21:39.17 ID:???] サニタイズいうなキャンペーン開始
886 名前:nobodyさん mailto:sage [2012/04/07(土) 23:59:10.64 ID:???] Cakeでそう言う名前だろw
887 名前:nobodyさん [2012/04/08(日) 10:36:25.86 ID:4ALRLsfw] >>875 うぉ!自分で書いてて気づかなかった。IDの仕組み分からんからこの書き込みIDどうなるか分からん。。。 >>884 ビューでエスケイプ。責任をしっかり分けておかないと後で後悔する
888 名前:nobodyさん mailto:sage [2012/04/09(月) 01:52:30.87 ID:???] >>873 さくらじゃなくてxreaとかcoreserverとかの設置方法見たら? /home/username/cakephp /home/username/www という感じに分けて、コアファイルをパブリックに置かないようにするのは一緒だよ xreaだと /virtual/username/cakephp /virtual/username/public_html とかになるけど
889 名前:nobodyさん [2012/04/09(月) 11:26:19.21 ID:gWXPCP/C] Cakephp2.1.1のモデルのファイル名に関して質問させてください ローカル(mac)の環境ではファイル名を小文字のみ(example.php)にしても読み込まれるのですが、 サーバー(centos)では一文字目を大文字(Example.php)にしないと読み込まれません 最新のCakephpはモデルのファイル名が大文字で始まるようなのですが ローカル環境では小文字でも動いています これはapacheの設定かphpの設定かosの設定なのでしょうか!?
890 名前:nobodyさん mailto:sage [2012/04/09(月) 12:26:26.44 ID:???] ローカルのOSがファイル名の大小を区別するかは調べた?
891 名前:nobodyさん mailto:sage [2012/04/09(月) 13:37:22.79 ID:???] 下記階層にCakePHP一式を配置し各種設定を行った後、 マルチドメインにて設定したパスに、アクセスしてみたところ 一応CakeFW自体は正常に動作している様に見受けられるのですが (CakePHP:the rapid development php framework が表示されました。) /home/{user_name}/www/multi_domain_directory 下記CSSがあたっていません。 <link rel="stylesheet" type="text/css" href="/css/cake.generic.css" /> ソースを開きその中のCSSの読込をクリックすると 本来は app/webroot/css/cake.generiuc.css が認識されないといけないハズなのですが webroot/css が認識されないです。 どうすればCSSが正常に認識される様になりますでしょうか? ※一応CakeFWを追いかけると lib/Cake/view/Helper/HtmlHelper.php / function css() にてロードをやっている様なのですが こちらは、FW本体なので手は入れたく無いです。
892 名前:nobodyさん [2012/04/09(月) 16:51:20.49 ID:gWXPCP/C] >>890 おーこれだ macのファイルシステムがHFS+ってのでこれが大文字小文字区別しないんですね 半日も嵌ってしまたけど勉強になった どうもです
893 名前:nobodyさん mailto:sage [2012/04/09(月) 17:02:12.28 ID:???] 1.3系でプラグインの作成で質問です。 >>721 でindexアクションを作ればプラグイン名のみでアクセス可能となりますが、 /pizza/addの場合、エラーになります。/pizza/indexでもエラーです。 プラグイン内のコントローラを参照しているからこうなると思うのですが、 プラグインで/pizza/addとか/pizza/editのアクション指定したい場合は、 ルーティングをいじらないといけないのでしょうか?
894 名前:nobodyさん mailto:sage [2012/04/09(月) 20:13:47.19 ID:???] cakePHPってYiiとかなり似通ってるね。
895 名前:nobodyさん mailto:sage [2012/04/10(火) 11:26:36.93 ID:???] レイアウト全体をキャッシュせずに 「$content_for_layout」の内容のみキャッシュしたいのですが、 どうすればいいのでしょうか?
896 名前:nobodyさん mailto:sage [2012/04/10(火) 12:05:36.17 ID:???] 外部に公開する場合に → Error: 23423Controller could not be found. ← こーいうエラーメッセージを表示せずに 存在しないページ、URLでアクセスされた場合には 事前に用意したエラーページ(メッセージ)を表示したいのですが どうすればよいでしょうか?
897 名前:nobodyさん [2012/04/10(火) 12:24:22.68 ID:R7ZoSsIJ] 2になってから$_GET['url']って読まなくなった?
898 名前:nobodyさん mailto:sage [2012/04/10(火) 13:53:53.12 ID:???] >>897 マイグレーションガイドぐらいは読もうぜ book.cakephp.org/2.0/en/appendices/2-0-migration-guide.html#request-handling-get-url-and-htaccess-files
899 名前:nobodyさん mailto:sage [2012/04/10(火) 15:35:48.29 ID:???] 仕様を変える方が悪い
900 名前:nobodyさん mailto:sage [2012/04/10(火) 15:45:33.60 ID:???] POSTフォームだと$this->request->dataの内容に応じて インプットの値が自動で上書きされるのに、 GETフォームだと、空のままなんですが、 自分でマージするしかないのでしょうか・・・? $this->request->data = $this->request->query; とやってもダメでした。
901 名前:nobodyさん mailto:sage [2012/04/10(火) 16:19:05.60 ID:???] >>895 layoutのcontent_for_layout以外のところをnocacheでくくってみたら? >>900 getでもフォームの内容は引き継がれるはずだよ 遷移先のフォームのIDとかnameが変わっちゃってない?
902 名前:900 mailto:sage [2012/04/10(火) 16:51:59.32 ID:???] >>901 うーん・・・私の環境だと引き継がれませんね。 ちなみに2.1系です。
903 名前:864 mailto:sage [2012/04/10(火) 23:50:19.65 ID:???] もし同じ状況の人がいたらあれなんで一応動いた解決法 d.hatena.ne.jp/kanonji/20090819/1250655003 ↑のとおりdll書き換えてCLI落ちなくなった
904 名前:nobodyさん mailto:sage [2012/04/11(水) 10:44:38.27 ID:???] 誘導されましたのでよろしくお願い致します。 cakePHPのヘルパーを使って画面遷移させようと しているのですが、出力されたリンクに関係ない文字列(ここでは、 /app ) が勝手に付加されてしまい困っています。 <?php echo $this->Html->link('JUMP', '/jump', array('class' => 'button', 'target' => '_self')); ?> ここでは、本当は (B)の形でhtmlを出力したいです。どうすれば良いでしょうか? (A) <a href="/app/jump" class="button" target="_self">jump</a> (B) <a href="/jump" class="button" target="_self">jump</a>
905 名前:nobodyさん mailto:sage [2012/04/11(水) 16:48:45.18 ID:???] 管理者が管理画面から会員ページに移動したいと思っています。 会員のパスワードは暗号化されるので、通常のログインでは無理です。 こういう場合って、単にAuthのセッション情報を付与して 会員ページにリダイレクトするだけでしょうか?
906 名前:nobodyさん mailto:sage [2012/04/11(水) 18:45:08.55 ID:???] 管理者としてではなく、管理者が会員Aさんになりすましてログインするってこと? 嫌な仕様だなw 会員ページのメンテナンスとかしたいなら管理者権限でそう言うのできるアクションを 作ればいいのでは
907 名前:nobodyさん mailto:sage [2012/04/11(水) 21:58:40.91 ID:???] >>904 PHP上級者スレとのマルチ
908 名前:864 mailto:sage [2012/04/11(水) 22:08:14.47 ID:???] >>904 cakeでの/はcake_appのルートになるからその動作が適切だよ 普通にHTMLで <a href="/jump" class="button" target="_self">jump</a> って書けばいいじゃん。 もしかしたら '/../jump'で解釈してくれたりしないかな?知らないけど
909 名前:nobodyさん mailto:sage [2012/04/11(水) 22:08:55.22 ID:???] 名前やちまたorz
910 名前:nobodyさん mailto:sage [2012/04/11(水) 22:12:31.92 ID:???] てかこれでブラウザが解釈してくれるわな 吐き出されるのはこうなるけど <a href="/app/../jump" class="button" target="_self">jump</a>
911 名前:nobodyさん [2012/04/11(水) 22:50:15.55 ID:Ko+Ap9VU] >>904 routingのprefixかなんかで特殊な設定してない? appという文字列がどこからやってきたのか検討もつかない状態なの? >>905 Authでログインしようとしても無理だと思うので>>906 でいいんじゃない
912 名前:nobodyさん mailto:sage [2012/04/11(水) 23:12:38.64 ID:???] >>908 cakePHPをせっかく使っているので直接書きはしたくないです。 >>911 基本的にcakePHPのベースコードは何もいじっていないのですが FWにデバッグコードを入れておっかけてみます。 >>907 お前の投稿自体マルチだろ。しね。
913 名前:nobodyさん mailto:sage [2012/04/11(水) 23:16:31.45 ID:???] >>908 ですが、、、 あれ?cakeルートがサーバーのウェブルートで無い場合に、 Html->link()つかってサーバールートへリンクしたいってことじゃないの? つまり、サーバールートの下にappってディレクトリがあってそこがcakeのルートになってるんじゃないの?
914 名前:nobodyさん mailto:sage [2012/04/12(木) 12:04:20.30 ID:???] cakePHPでは一般的に共通で使用されるファンクションは どこに定義しますか? パスを教えてください。 Utility的な自己ライブラリを定義したいと考えています。
915 名前:nobodyさん mailto:sage [2012/04/12(木) 12:18:39.89 ID:???] ファンクション群ならbootstrapじゃね 外部にしてincludeか
916 名前:905 mailto:sage [2012/04/12(木) 13:56:49.96 ID:???] >>906 、>>911 私も管理画面に会員情報を編集できるページを作っていたのですが、 管理画面から対象の会員としてログインし、 会員情報の修正をしている市販CMSを結構見るんです。 たぶん、同じような箇所を管理画面用・会員用と分けて作るのは 手間がかかるからログインし直すという事で対処していると思うのですが、 あまり良いやり方ではないみたいですね。
917 名前:nobodyさん mailto:sage [2012/04/12(木) 18:05:37.36 ID:???] 成りすましをしているようで変態的
918 名前:nobodyさん mailto:sage [2012/04/13(金) 01:19:58.45 ID:???] >>914 vendorにライブラリとして突っ込む >>916 ユーザーが実行できる範囲の行動を管理者が行うという前提であれば 手抜きの方法としてナシではないのかもしれないけど、スマートでないのは確か というかユーザーが修正できるんならユーザーに修正させるべきじゃね? 管理者がユーザーの設定代行するって言うのはかなりの最終手段のような気がする
919 名前:nobodyさん mailto:sage [2012/04/13(金) 14:04:43.06 ID:???] Cakephp のメソッド引数として全角文字列を入れて動かしているのですが、 なぜかIEでだけ、動きません。 hostname.jp/controller/action/ 全角の検索ワード という感じのアクションなのですが、Chromeでは問題なく動いているのですが、 IE系のブラウザではまったく動いてくれません。検索ワードが半角文字だけですと、IEでも動いています。 そもそもCakeのメソッド引数に上記の方法で全角文字列を渡してもいいものなのでしょうか? なにか別にいい策があればご教示ください。
920 名前:nobodyさん mailto:sage [2012/04/13(金) 14:52:39.24 ID:???] 全角? 古臭い用語だな
921 名前:nobodyさん mailto:sage [2012/04/13(金) 15:01:55.33 ID:???] >>920 マルチバイト文字のことです。正確にはUTF-8の日本語文字列です。
922 名前:nobodyさん mailto:sage [2012/04/14(土) 00:10:19.08 ID:???] >>919 Cakeとか関係ない。 UTF-8で書かれたページでPOSTしたら サーバーに投げられる文字コード何か? EUC-JPで書かれたページでPOSTしたら サーバーに投げられる文字コード何か? この2つの例でサーバーに投げられ文字コードは何で決まるのか? hostname.jp/controller/action/ 全角の検索ワード の「全角の検索ワード 」の部分の文字コードはどうやって決めるのが正しいか 考えてみれば良い。
923 名前:nobodyさん mailto:sage [2012/04/14(土) 09:35:05.93 ID:???] 文字コードも関係ないwww
924 名前:nobodyさん mailto:sage [2012/04/14(土) 10:00:41.58 ID:???] URLエンコード
925 名前:nobodyさん mailto:sage [2012/04/14(土) 10:52:00.00 ID:???] アホか。URLエンコード するときの 文字コードは何だよ。言ってみろ
926 名前:nobodyさん mailto:sage [2012/04/14(土) 12:26:15.35 ID:???] cakePHP2.1.1を使用してコントローラの中からモデル内に定義した ファンクションをコールしようとしているのですが 下記の様なエラーが出てしまいます。 どこに間違いがあるのでしょうか? [model] class Test extends AppModel { var $name = 'Test'; function Testxxx(){echo "Test!";} } [controller] var $uses = array('Test'); $this->Test->Testxxx(); [error] Error: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Testxxx' at line 1
927 名前:nobodyさん mailto:sage [2012/04/14(土) 13:43:48.92 ID:???] Error: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Testxxx' at line 1
928 名前:nobodyさん mailto:sage [2012/04/14(土) 13:50:12.49 ID:???] エラーメッセージを繰り返したら誰かが答えるとでも?
929 名前:nobodyさん mailto:sage [2012/04/14(土) 14:11:27.02 ID:???] >>926 と >>927 は別人だろうが。 >>928 お前はミサイルで頭を破壊した方がいいよ。どうせまともなルックスしていない下種野郎だろうしな。
930 名前:nobodyさん mailto:sage [2012/04/14(土) 15:09:22.75 ID:???] で?それが質問者の態度?
931 名前:nobodyさん mailto:sage [2012/04/14(土) 18:06:38.12 ID:???] cakePHP で特定のコントローラ 例) denyController.php へのアクセスを禁止するには一般的にどうしますか? .htaccess or cakePHPでなにがしかの設定が可能?
932 名前:nobodyさん mailto:sage [2012/04/14(土) 18:42:11.68 ID:???] cakePHPでdeleteAllに削除条件を指定しても無効なのでしょうか? 下記コードを実行すると、全レコードが削除されてしまいます><; $deleteCondition = array("hoge_id" => 3333); $this->Hoge->deleteAll( $deleteCondition );
933 名前:nobodyさん mailto:sage [2012/04/14(土) 18:52:06.84 ID:???] >>932 条件の与え方はfindと同じだよ。 その条件でfindしたら検索されるの?
934 名前:nobodyさん [2012/04/14(土) 19:34:52.76 ID:V2giXwsG] >>931 俺ならコントローラー全てのアクションにprefixつけてprefixルーティング&アクセス制御って感じかな
935 名前:nobodyさん mailto:sage [2012/04/14(土) 19:38:18.38 ID:???] >>933 自己解決しました。 英語のドキュメントを見たところ cake2.1.1 になってから呼出し方が微妙に変わっていました。
936 名前:nobodyさん mailto:sage [2012/04/14(土) 19:55:02.70 ID:???] >>935 一応、どう変わったのか書いてほしいな
937 名前:nobodyさん mailto:sage [2012/04/14(土) 20:25:02.13 ID:???] >>936 実際には delete は変わってませんでした。 findについては、 findAll → find('all') といった感じです。 しかし、なぜ同じコードで>>932 が今度は正常に削除出来たか不明。
938 名前:nobodyさん mailto:sage [2012/04/14(土) 20:33:32.07 ID:???] controllersの下にサブフォルダを作ってコントローラーを置くと認識されますが、view以下で同じことをやるとエラーになります。 viewsのパスを任意に追加するにはどうすればいいのでしょうか? ソース見たらApp::path('views')でパスは取れるみたいだけど追加の関数がない。
939 名前:nobodyさん mailto:sage [2012/04/15(日) 02:11:36.29 ID:???] なれると cakePHP むっちゃ便利やんかぁ。
940 名前:nobodyさん mailto:sage [2012/04/15(日) 08:46:03.26 ID:???] cakePHP と Pear って一緒に使える?
941 名前:nobodyさん mailto:sage [2012/04/15(日) 19:57:59.30 ID:???] はい
942 名前:nobodyさん mailto:sage [2012/04/15(日) 20:19:36.67 ID:???] cakePHP で hogehoge.com?age=17 じゃなくて hogehoge.com/age/17 として処理を行うにはどうしたら良いでしょうか?
943 名前:nobodyさん mailto:sage [2012/04/15(日) 20:27:24.52 ID:???] >>942 ブログチュートリアルでもやればやり方わかるだろう
944 名前:nobodyさん mailto:sage [2012/04/16(月) 13:39:36.79 ID:???] cakePHP(2.1.1) で AController / Hoge() 内の処理で AController / Hage() や BController / Chabin() を呼び出すにはどうすれば良いでしょうか?
945 名前:nobodyさん mailto:sage [2012/04/16(月) 13:50:55.75 ID:???] >>944 異なるコントローラ間で同じ処理をやらせないなら、コンポーネントを使うといい。
946 名前:nobodyさん mailto:sage [2012/04/16(月) 14:00:58.75 ID:???] >>945 ありがとうございます。 どうしても重複処理があり使いまわしたと思ってました。
947 名前:nobodyさん mailto:sage [2012/04/16(月) 19:03:36.34 ID:???] cake2.1.1(サクラ) でcronでcakePHPを実行させる為に、まずコマンドラインから 正常にキック出来る事の確認をしているのですがうまくいきません。 1.x系と2.xとでは記述方法が異なっている事を考慮に入れ 下記コードを記述しているのですがなぜかシェルクラスが認識されないです。 【作成したシェルクラス】 Console/Command/TestHelloShell.php <?php class TestHelloShell extends AppShell { public function main() { $this->log('[Shell]main() が実行されました。', LOG_DEBUG); } } ?> 【コマンドライン】 %/usr/local/bin/php /home/{my_account}/cake/lib/Cake/Console/cake.php test_hello -app /home/{my_account}/www/{my_directory}/app Error: Shell class TestHelloShell could not be found. #0 /home/{my_account}/cake/lib/Cake/Console/ShellDispatcher.php(167): ShellDispatcher->_getShell('test_hello') #1 /home/{my_account}/cake/lib/Cake/Console/ShellDispatcher.php(69): ShellDispatcher->dispatch() #2 /home/{my_account}/cake/lib/Cake/Console/cake.php(41): ShellDispatcher::run(Array) #3 {main}
948 名前:nobodyさん mailto:sage [2012/04/16(月) 23:25:38.33 ID:???] >>947 ドキュメントをよめ
949 名前:nobodyさん mailto:sage [2012/04/19(木) 01:38:53.63 ID:???] cakePHP ってなんでこんなに便利なんだ。楽しすぎる
950 名前:nobodyさん [2012/04/19(木) 16:26:48.17 ID:GZ2gdGu2] ログイン認証とかの制御をいれたいんですけど お勧めの方法はありますか?
951 名前:nobodyさん mailto:sage [2012/04/19(木) 17:13:57.30 ID:???] Auth使えば
952 名前:nobodyさん mailto:sage [2012/04/19(木) 17:14:15.72 ID:???] Authコンポーネント
953 名前:nobodyさん mailto:sage [2012/04/19(木) 17:29:14.82 ID:???] 良く使用する変数(サイトのURLなど)をDBで管理して 設定ファイルに出力したいのですが、良い方法は無いでしょうか? 考えたのは、モデルキャッシュして設定ファイルが必要な時に そのキャッシュを読み込むパターンです。
954 名前:nobodyさん mailto:sage [2012/04/19(木) 19:06:23.24 ID:???] >>953 bootstrap.phpでDBから設定データを読み込んでConfigure::Storeでキャッシュ。 …でもいいんだけど、 Cake2からは ConfigReaderInterfaceっつうのがついたからね。 Readerを書けばモデルから直接Configureに読み込むができるようになった。 Configureファイルに書いた時と同じようにConfigure::read()でどこでも読めるから便利よ
955 名前:nobodyさん mailto:sage [2012/04/19(木) 21:31:47.54 ID:???] あと、Sanitize::escape() でサニタイズしたデータを復元するときって みなさんどんな感じでやってますか?
956 名前:nobodyさん mailto:sage [2012/04/19(木) 22:16:25.42 ID:???] サニタイズいうな
957 名前:nobodyさん mailto:sage [2012/04/19(木) 22:18:18.29 ID:???] サニタイズ時々
958 名前:nobodyさん mailto:sage [2012/04/20(金) 00:36:04.30 ID:???] >>956 本当はなんていうの? マジレス希望。
959 名前:nobodyさん mailto:sage [2012/04/20(金) 00:54:10.36 ID:???] サニタイズが正しいよ verbだからな。 >>958 つまり >>956 は英語が出来ないばか
960 名前:nobodyさん mailto:sage [2012/04/20(金) 01:41:15.34 ID:???] >>951 >>952 ありがとう
961 名前:nobodyさん mailto:sage [2012/04/20(金) 04:26:48.64 ID:???] サニタイズ言うなを知らない方が馬鹿
962 名前:nobodyさん mailto:sage [2012/04/20(金) 11:16:59.61 ID:???] 英語の出来ない >>961 はもっとバカ
963 名前:nobodyさん [2012/04/20(金) 12:22:03.72 ID:PezrE8Wt] うんごぶりぶりんこ!!!!ドビュビュビュビュドバババババブッ!!! ドリュルリュルウリュリィブブブブブブッッ!!!!あへあへうんこまん!!!ぶりっちょ!!! ケツの穴からドババババババババッバwwwwwwwwwwwwWWWW wwwwwwwwwwww WWWwwwwwwwwwww??? ? ? ? ? ? ? ????? ????????wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww なお、まにあわんもよう
964 名前:nobodyさん mailto:sage [2012/04/20(金) 12:25:44.92 ID:???] ↑サニタイズよろしく
965 名前:nobodyさん mailto:sage [2012/04/20(金) 12:32:52.78 ID:???] アホが露呈して ファビョル >>963 低能乙w いまどき英語なんて小学生でもペラペラなのにwww
966 名前:nobodyさん mailto:sage [2012/04/20(金) 13:43:18.88 ID:???] >>954 1.3系使ってるので、Configure::storeを使うパターンで行きます。 これってfindした配列を保存して、loadで読み込んでreadで参照 出来るから便利ですよね。参考になりました。ありがとうございます。
967 名前:nobodyさん mailto:sage [2012/04/20(金) 23:58:00.96 ID:???] 俺がバカなら、お前もバカぁ〜 バカを承知でなぜ惚れた〜
968 名前:nobodyさん mailto:sage [2012/04/21(土) 11:00:21.04 ID:???] cakeでは当たり前だと思うのですが、 example.com/about とかexample.com/sitemap というようにアクション名だけ指定したい場合、 ルーティングでアクション名を追加する必要がありますよね? example.com/ のコントローラがhomeであり、 /views/home/内にアクション用のファイルがあれば routes.phpに記載しなくてもアクション名だけで アクセスできないかと思い、質問しました。
969 名前:nobodyさん mailto:sage [2012/04/21(土) 14:00:03.01 ID:???] >>968 一行書くことになるけど Router::connect('/:action', array('controller' => 'home')); とかでいけるんじゃない
970 名前:nobodyさん mailto:sage [2012/04/21(土) 14:43:21.86 ID:???] >>969 この方法だと、コントローラにアクションを追加しないとアクセスできません。 pagesを使うように、アクション名を書かずにビューファイルを追加するだけで アクセスできるようにしたいのですが・・・
971 名前:nobodyさん mailto:sage [2012/04/21(土) 17:21:29.95 ID:???] リモートデバッグについて質問なんですけど Eclipseでレンタルサーバ上に展開したPHPファイルを ローカルのEclipseにてデバッグ実行って出来ますか? ※ブレークポイントが正常に止まるか。
972 名前:nobodyさん mailto:sage [2012/04/21(土) 22:21:07.57 ID:???] >>970 アクション追加せずにビューだけ表示したいのならpagesでいいんじゃないの? アクションが無いのだから特定のコントローラーを介する理由も無いし Router::connect('/*', array('controller' => 'pages', 'action' => 'display'));
973 名前:nobodyさん [2012/04/22(日) 10:29:18.10 ID:L2FF/0Tg] >>971 リモートデバッグは、サーバー側のデバッグ用ポートにコネクトしてする感じ そのレンタルサーバとやらに聞いてみて、デバッグ用ポートが開いていないのなら無理 まぁ、普通のレンタルサーバでデバッグポート開いている事はたぶん無いんじゃないかな
974 名前:nobodyさん mailto:sage [2012/04/22(日) 11:01:45.48 ID:???] >>973 ありがとうございます。 鯖屋に確認してみます。 ローカル環境に開発環境を作ると重たいので 全てレンタルサーバ上でやりたいなぁー、なんて考えてました。
975 名前:nobodyさん [2012/04/22(日) 11:32:49.43 ID:L2FF/0Tg] >>ローカル環境に開発環境を作ると重たいので 重いのはたぶんEclipseだよ 他のエディタとか使う事あるのなら、XAMPP+エディタで試してみるといい ただ、GUIのデバッグ環境は無いと思うが。
976 名前:nobodyさん mailto:sage [2012/04/22(日) 15:41:01.67 ID:???] debugレベルを 0 にしても 適当なURLを入力すると次の様にサイトがcakePHPを使用している事がわかる様な エラーメッセージが出てしまいます。 これを消す方法とかってありますか? CakePHP: the rapid development php framework
977 名前:nobodyさん mailto:sage [2012/04/22(日) 15:57:27.32 ID:???] バカはしね
978 名前:nobodyさん mailto:sage [2012/04/22(日) 18:19:37.02 ID:???] >>976 default.ctpとかテンプレートのどっかに書かれてるんだろ どこから出力されてるか突き止めてそれを消せ
979 名前:nobodyさん mailto:sage [2012/04/22(日) 19:19:39.84 ID:???] 今どきデバッガの力を借りないとデバッグできないなんて
980 名前:nobodyさん mailto:sage [2012/04/22(日) 19:53:54.59 ID:???] デバッガすら使えない誰かさん >>979 w
981 名前:nobodyさん mailto:sage [2012/04/22(日) 20:33:38.25 ID:???] HTMLでいうと <li><input type="checkbox" name="data[Post][]"></li> <li><input type="checkbox" name="data[Post][]"></li> <li><input type="checkbox" name="data[Post][]"></li> みたいな出力にしたい時、フォームヘルパーを使って出来ますか?
982 名前:nobodyさん [2012/04/23(月) 16:08:34.29 ID:3JcMmxsm] cakePHPでブラウザからアクセスがあった場合に 次の様に解釈させ、処理を実現をしたいのですがどうすれば良いでしょうか? @アクセスされる際のURL unnko.com/prin/food/rice/333 @Controllerに定義した内容 class PrinController extends AppController { function food($menu,$id) { echo $menu."<br>"; // ← rice を表示したい。 echo $id."<br>; // ← 333 を表示したい。 } }
983 名前:nobodyさん mailto:sage [2012/04/23(月) 16:13:23.70 ID:???] バカはしね
984 名前:nobodyさん mailto:sage [2012/04/23(月) 17:14:29.71 ID:???] いつものウンコ野郎はスルー 頭の中にウンコがぎっしり詰まってるんだろ
985 名前:nobodyさん mailto:sage [2012/04/23(月) 20:52:22.44 ID:???] Lithium安定版でねーなぁ
986 名前:nobodyさん mailto:sage [2012/04/23(月) 22:52:36.10 ID:???] >>982 それで実現できてないか?
987 名前:nobodyさん mailto:sage [2012/04/24(火) 11:09:19.41 ID:???] >>981 <li>$this->Form->checkbox('post.xxx');</li>
988 名前:nobodyさん mailto:sage [2012/04/24(火) 11:12:03.63 ID:???] モデルでクッキーを読みに行きたい場合、皆どうしてる? DB登録時に、クッキーからログインユーザーの情報吸い上げて登録しにいくフローって多くない? モデル内でApp::usesでクッキーコンポーネント呼ぶのは邪道?
989 名前:nobodyさん mailto:sage [2012/04/24(火) 11:24:40.31 ID:???] モデルでくっきーを読もうってのがそもそも設計としてゴキブリレベル
990 名前:nobodyさん mailto:sage [2012/04/24(火) 11:28:43.67 ID:???] いや蛆虫だろう
991 名前:nobodyさん mailto:sage [2012/04/24(火) 11:58:40.78 ID:???] ああ、そうやっぱモデルでクッキー読むのは邪道なのね。サンクス
992 名前:nobodyさん mailto:sage [2012/04/24(火) 11:59:56.14 ID:???] >>982 View フォルダの下にPrinフォルダつくってfood.ctp作ったか?
993 名前:nobodyさん mailto:sage [2012/04/24(火) 12:59:47.43 ID:???] >>992 Thank you!
994 名前:981 mailto:sage [2012/04/24(火) 14:05:37.49 ID:???] ↓こんな感じでやってみたのですが、エラー時など同じビューを表示した時、 チェックした項目がチェックされていません。どうすればいいのでしょうか? <li><?php echo $form->checkbox('Post.xxx', array('value' => 1)); ?></li> <li><?php echo $form->checkbox('Post.xxx', array('value' => 2)); ?></li> <li><?php echo $form->checkbox('Post.xxx', array('value' => 3)); ?></li>
995 名前:nobodyさん mailto:sage [2012/04/24(火) 15:11:46.26 ID:???] 2.0のAuthがsessionKeyをself::$sessionKeyとしてるもんだから コントローラーからモデル名に変えようにも $this->Auth->sessionKey = 'Auth.Hoge'; じゃだめで AuthComponent::$sessionKey = 'Auth.Hoge'; って市内とダメなんだけどそもそもいじっちゃマズイのかな?