1 名前:nobodyさん [2013/09/09(月) 01:56:10.19 ID:m9OPw/HT] CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ 質問するときはCakePHPのバージョンを書きましょう ※他フレームワークとの比較等はスレ違いです ■本家 www.cakephp.org/ APIドキュメント api.cakephp.org/ github - cakephp github.com/cakephp the Bakery bakery.cakephp.org/ Issue cakephp.lighthouseapp.com/dashboard CheatSheet[1.2] (PDF) cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf ■日本語公式 cakephp.jp/ フォーラム cakephp.jp/modules/newbb/ cookbook(マニュアル) [2.x] book.cakephp.org/2.0/ja/index.html [1.3] book.cakephp.org/ja kohada.2ch.net/test/read.cgi/php/1354593996/l50
74 名前:nobodyさん mailto:sage [2013/09/17(火) 12:59:52.45 ID:???] >>55 だけど。思いついた! 子テーブルのビューを作って親のループ中にrequireすればいい! モデル理解するの無理そうだからそうしよう!
75 名前:nobodyさん mailto:sage [2013/09/17(火) 13:45:38.86 ID:???] controllerはわりと理解した viewもわりと理解した modelがよくわからない 他人が書いたソースを眺めるだけじゃなく、ちゃんと書籍なりで勉強すべきかな
76 名前:nobodyさん mailto:sage [2013/09/17(火) 13:54:53.58 ID:???] フォームのinput submitでハマった。 普通なら/xxxx に飛ぶのに/xxxx/ に行ってしまって、その後のボタン処理が滅茶苦茶。 結局判らずリンク先をダイレクトに指定して回避したけど気持ち悪い。 Twitter Bootstrapを最近入れたけどCakePHPのフォーム処理と使い勝手が悪い感じがする。
77 名前:nobodyさん mailto:sage [2013/09/17(火) 13:59:43.68 ID:???] 入門書はいくつかあるけど中級以上向けのガイドが欲しいな 実際に開発始めると、例みたいに簡単な1コントローラ、1モデル、1ビューの構成に片付かない 1コントローラ複数モデルになると一気にコントローラが太るのを何とかしたい
78 名前:nobodyさん mailto:sage [2013/09/17(火) 14:21:37.80 ID:???] >>74 なんか苦戦してるみたいだけど、 具体的に詳しく書けば何らかの助言は貰えると思うよ。 よくは分からないけど、あなたは今良くない方向へ向かっている気がする。 同じ努力をするなら少し方向を考え直した方がいいのでは?
79 名前:nobodyさん mailto:sage [2013/09/17(火) 16:36:07.83 ID:???] 複数形で書いたり単数形で書いたり、気持ち悪いったらありゃしない
80 名前:nobodyさん mailto:sage [2013/09/17(火) 16:37:37.77 ID:???] >>76 フレームワークが暗黙的にいろんなデータを補完しているから、 初心者だとよくはまる失敗の典型ではないかと思います。 詳しく見れば必ず解決できるはずなんだけど、最初は調べ方すらわからないのが普通。 問題になってる FormHelper::create() のパラメータを書いて見れば?
81 名前:nobodyさん mailto:sage [2013/09/17(火) 16:40:07.14 ID:???] >>79 アングロサクソンに合わせるしか無いのであきらめろ。 世界の文化を上書きできるならもう一度戦争してみればいい。
82 名前:nobodyさん mailto:sage [2013/09/17(火) 16:52:47.46 ID:???] 複数形が単純に「s」つけるだけならいいけど、company→companiesみたいに単純なものじゃないときにどうしていかわからないよ
83 名前:nobodyさん mailto:sage [2013/09/17(火) 17:35:09.83 ID:???] どうでもいいけどdataの複数形は?
84 名前:nobodyさん mailto:sage [2013/09/17(火) 17:37:54.93 ID:???] datum
85 名前:nobodyさん mailto:sage [2013/09/17(火) 17:41:21.66 ID:???] >>83-84 ギャグじゃなければ逆
86 名前:nobodyさん mailto:sage [2013/09/17(火) 18:00:02.50 ID:???] はっ!
87 名前:nobodyさん mailto:sage [2013/09/18(水) 15:18:46.52 ID:???] ちょっと聞いてみるんですけど、 FoodsテーブルにcolumnとしてDish_id, Calorie, (質問には関係ないけどFoodnameも)が有って、 Dishesテーブルの内容を、それぞれのrowに属するFoodのCalorieの合計の大きい小さい順に paginatorの機能を使って並び変えられるようにしたい時、どうするのが一番良いですかね? DishesテーブルにCalorieの合計値を属性として持たせる、と言うのは思いついたんですがどうでしょうか? CakePHPは2.2を使ってます。
88 名前:nobodyさん mailto:sage [2013/09/18(水) 15:59:01.32 ID:???] >>87 間違ってないので良いんではないでしょうか
89 名前:nobodyさん mailto:sage [2013/09/18(水) 16:05:46.78 ID:???] >>88 そうですか、ありがとうございます。 ただそうなると、もしFoodsテーブルのcalorie情報とDishesテーブルのcalorie合計値情報が 絶対矛盾しない様にしたいと思ったらトランザクションとか使わないといけないですよね? もしくはcronとかを回してFoodsテーブルとDishesテーブルで矛盾が出たら検知するプログラムを走らせるとか?
90 名前:nobodyさん mailto:sage [2013/09/18(水) 21:07:53.48 ID:???] MySQL ならトリガー使えばDB側で正確さを担保できる
91 名前:nobodyさん mailto:sage [2013/09/19(木) 01:15:58.79 ID:???] >>55 だけど!モデル理解するの無理そうだから。もうコントローラーにHTML書いて書いてく!
92 名前:nobodyさん mailto:sage [2013/09/19(木) 01:47:34.39 ID:???] お、おう・・・
93 名前:nobodyさん mailto:sage [2013/09/19(木) 05:11:21.97 ID:???] フレームワーク使う意味ないやんw
94 名前:nobodyさん mailto:sage [2013/09/19(木) 11:46:18.88 ID:???] >>93 でもちゃんと理解できるまでそうするっていうのならありじゃない? 理解してないのに使うなは禁句
95 名前:nobodyさん mailto:sage [2013/09/19(木) 12:02:37.73 ID:???] ネタなのかマジなのかわからないのが沢山混じってるな・・・
96 名前:nobodyさん mailto:1 [2013/09/19(木) 22:23:16.57 ID:???] cakeを使うメリットを教えてほしいんだが、何がそんなにいいの?
97 名前:nobodyさん mailto:sage [2013/09/19(木) 23:00:16.87 ID:???] 勘違いしてるようだが 他FWに比べて、いいから使ってるわきゃない
98 名前:nobodyさん mailto:sage [2013/09/20(金) 00:26:53.84 ID:???] 日本語資料が(他と比べると)多い それが一番じゃないかな?
99 名前:nobodyさん mailto:sage [2013/09/20(金) 00:31:48.40 ID:???] 最初になんとなくCakeを選んでしまった 今は後悔している
100 名前:nobodyさん mailto:1 [2013/09/20(金) 04:37:03.54 ID:???] >> 96 97 98 96だが、日本語の資料が多いだけか。 他FWに比べて他のメリットってなにもないよね。 参考になったよありがとう。
101 名前:nobodyさん mailto:sage [2013/09/20(金) 05:51:49.74 ID:???] 特定のページに行くとセッションが切れるのなんなの?
102 名前:nobodyさん mailto:sage [2013/09/20(金) 07:38:57.90 ID:???] >>101 特定のページの作りがおかしいんだろうな
103 名前:nobodyさん mailto:sage [2013/09/20(金) 09:51:34.51 ID:???] >>101 ファイルの存在しないパスのアセットを取得しようとしてるかも。 一度CSSとかfaviconとかの記述をチェックして下さい。
104 名前:nobodyさん mailto:sage [2013/09/20(金) 16:20:28.57 ID:???] AuthってAppControllerに指定してる? してないならセッション切れの原因になると思う 俺も一部のコントローラーだけ指定してたらそうなった
105 名前:nobodyさん mailto:sage [2013/09/20(金) 17:24:32.38 ID:???] >>100 cakeはcontrollerの部分はすごく便利 だが、modelはダメダメ viewもわりと使いやすい
106 名前:nobodyさん mailto:sage [2013/09/20(金) 17:31:35.17 ID:???] 俺は基本デザイナーで、片手間でフレームワークを覚えなくちゃなんなくて 仕方なく始めたのがCakePHP1.3だった。 で、特に不満もなく今に至るという感じで、 なんとか2系にはシフトできたけど ほかのフレームワークを試せるほど余裕が無い。 Cakeをある程度使えるようになるまで時間がかかったから、 それと同じぐらいの手間をかけてまで 他にまで手を広げようという意欲がわかないだけで、 簡単に他のを試せるならCakeを使っていないかもしれない。 そういう人は多いのじゃないかと思うがどうだろう。
107 名前:nobodyさん mailto:sage [2013/09/20(金) 17:58:36.98 ID:???] 俺がCakeに手を出した頃(2009〜10)が多分Cakeの全盛期だったんだと思う その頃はまだFuelPHP等も流行ってなく、PHPのMVCフレームワークといえばどの本も大体Cakeを筆頭に挙げてた で俺も勝ち馬に乗るつもりで手を出してみたんだけど、使ってみたらイマイチで他に新しいのがどんどん出てきた けどキッツキツの仕事のスケジュールの中ではコードの再利用や学習コストを考えると他に以降できない 気に入らない点のいくつかは2で改善したし一応使い物になってるのでそのままって感じ
108 名前:nobodyさん mailto:sage [2013/09/20(金) 18:10:37.86 ID:???] 後発が良いツールなのは世の常だけど、 情報量が少ないとわざわざ覚えようと思わないよね
109 名前:nobodyさん mailto:sage [2013/09/20(金) 18:48:44.64 ID:???] 情報量に関してはCakeが特にいいと思わないな。 英語でもいいから公式ドキュメントをもっと充実して欲しいね、使い込む人用に。 ネットの記事や本も2より1の時の方が多かったよね、3になったら更に減ったりするのかな。
110 名前:nobodyさん mailto:sage [2013/09/20(金) 18:51:58.92 ID:???] ドキュメント十分だろ。これ以上はソース読めレベル。
111 名前:nobodyさん mailto:sage [2013/09/20(金) 20:07:24.91 ID:???] ドキュメントって何だか文系向けだよね。 体系的・科学的じゃない。
112 名前:nobodyさん mailto:1 [2013/09/20(金) 20:09:43.10 ID:???] 100だが Struts(java)⇒Symfony1系⇒ZendFW1系⇒Symfony2系⇒Cake2系と変遷してきた。 ドキュメントは公式のページで充分だしわからないとこはソースみりゃいいよね。 どんなFWでも同じ。 初めて触ってみたけどcakeの良いとこが多少学習コストが低いかもくらいしか見つからなかったんだ。 それで聞いてみた。
113 名前:nobodyさん mailto:sage [2013/09/20(金) 20:27:59.86 ID:???] 公式ドキュメント全然十分じゃないよ。開発中知りたい事が全然載ってない。 初心者騙しにしかなってない。 わからなかったらソース読めとかアホかそんな効率悪い事できるのは暇人だけ。皆働いてんだよ。
114 名前:nobodyさん mailto:sage [2013/09/21(土) 00:07:12.40 ID:???] Haveの複数形はhasでいいの?havesになったりしない?
115 名前:nobodyさん mailto:sage [2013/09/21(土) 00:39:39.41 ID:???] 俺はどうも複数形には慣れないな 単数形にすることも出来るけど、フォーム処理で躓く時あるし
116 名前:nobodyさん mailto:sage [2013/09/21(土) 00:53:11.30 ID:???] 一応テーブル名複数形、モデル名単数形のコーディング規約にしてるけど 数人でプロジェクト組むと、うっかり守らない奴が出るんだよなあ
117 名前:nobodyさん mailto:sage [2013/09/21(土) 01:19:39.04 ID:???] >>114 名詞でhaveなんか使うのか?別にいいけど。。。
118 名前:nobodyさん mailto:sage [2013/09/21(土) 01:21:56.95 ID:???] ちなみに名詞で have って言ったら「(莫大な富とかを)持ってる人」みたいな意味です。 その場合は単数形が have で、複数形が haves だよ。
119 名前:nobodyさん mailto:sage [2013/09/21(土) 01:27:56.10 ID:???] 英語文化は尊重するけど、英語じゃない単語の扱いが半端無く面倒くさい。
120 名前:あ mailto:sage [2013/09/21(土) 01:41:26.10 ID:???] iphoneアプリのサーバ側でcakephpを使おうと思ってます。 会員制のアプリで、アプリからブログの更新ができるようにしたいです。 ログイン後のトークン発行など、、ここらへんがよくわかりません。。 どんな流れになるのでしょうか? よろしくお願いします。
121 名前:nobodyさん mailto:sage [2013/09/21(土) 03:32:29.71 ID:???] >>120 book.cakephp.org/2.0/ja/tutorials-and-examples/blog-auth-example/auth.html
122 名前:nobodyさん [2013/09/21(土) 09:22:19.71 ID:IxVA/8jO] わかる方がいれば、教えてほしいんですが以下のSQLをCakePHP用に 書き直す場合にどのようにすればよいでしょうか select カラムA,(select カラムB from テーブル where カラムA=t1.カラムA order by rand() limit 1) from (select カラムA from テーブル group by カラムA) t1;
123 名前:nobodyさん [2013/09/21(土) 12:05:47.80 ID:h7jpowpU] >>122 直書き 一択
124 名前:nobodyさん mailto:1 [2013/09/21(土) 12:12:42.26 ID:???] >> 113 調べることが暇人ってなんだ? やりたいことが載ってないって応用力ないんだなww 答えそのものが載ってないとできない奴っているよねw cakeが初心者用のフレームワークって納得したよ。
125 名前:nobodyさん mailto:sage [2013/09/21(土) 12:29:05.54 ID:???] たとえばさ、モデルのバリデーションの指定方法一覧ぐらいは、公式が用意してくれてもバチはあたらないと思うんだ ソース検索して開いて見るより、ドキュメントがあったほうが見やすいだろ?
126 名前:nobodyさん mailto:sage [2013/09/21(土) 12:38:54.14 ID:???] 2系を使っています。コントローラとアクションが 存在するか調べる機能ってないですかね? 小一時間ググったのですが、見つけられませんでした・・・
127 名前:nobodyさん [2013/09/21(土) 12:48:08.89 ID:h7jpowpU] >>126 特別な方法はないと思う Shellプラグインの作成で結構地味に調べたのを記憶してる
128 名前:nobodyさん mailto:sage [2013/09/21(土) 12:54:35.00 ID:???] ないのかよ
129 名前:nobodyさん mailto:1 [2013/09/21(土) 12:55:01.64 ID:???] > 125 公式 book.cakephp.org/2.0/en/models/data-validation.html ソース lib/Cake/Utility/Validation.php 公式に全部載ってるかどうか知らんが、1つでも載ってたらソース見ないの? どんなチェックしてるか知らないのに実装するの? > 126 phpspot.net/php/pg%E3%82%AF%E3%83%A9%E3%82%B9%E3%81%8C%E5%AD%98%E5%9C%A8%E3%81%99%E3%82%8B%E3%81%8B%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF.html
130 名前:nobodyさん mailto:sage [2013/09/21(土) 14:04:59.28 ID:???] >>129 cakeの機能としてはないんですね。 ビューの一部をDBに保存してるのであればと思いましたが、 ないということなので定数からパスを作成して調べます
131 名前:nobodyさん [2013/09/21(土) 16:43:48.92 ID:McaoFmaC] フォームのデータの受け取り方がどうしてもわかりません。 具体的にはコンボボックスやラジオボタンで選択されたデータをコントローラーで知りたいのですが、 $this->data[テーブル名][カラム名] データベースのデータじゃなくてコントローラーで設定した値なので使えない。 $this->param['form][???] paramにPOSTデータが全部入るようなのですが、二番目の引数に何を指定すれば求めるものが取得できるのかわかりません。 何を入れてもnullが返ってきます。根本的に考え違いしていますか?
132 名前:nobodyさん [2013/09/21(土) 16:56:23.08 ID:IxVA/8jO] >>131 間違ってたらごめん。 どんなデータがpostされてるかはchromeなら要素検証から見れるから それを参考に書いてみるといいと思う。 cakephp2しか触ったことないけど、その場合は下の感じで受け取るね $this->request->data['model']['id']みたいな感じ
133 名前:nobodyさん mailto:sage [2013/09/21(土) 17:01:45.99 ID:???] var_dump($this->request->data); で確認してみるとよさそう
134 名前:nobodyさん mailto:sage [2013/09/22(日) 03:28:58.52 ID:???] debug()さん「・・・」
135 名前:nobodyさん mailto:sage [2013/09/22(日) 03:45:13.84 ID:???] 2.3.10(たぶん2系)で、AuthのuserModelでバーチャルフィールドを 指定していると、ログイン時になにも入力しなくても ログインできてしまう問題に遭遇した。 バーチャルフィールドの指定を外すとエラーチェックしてくれるから バーチャルフィールドが問題だと思うけど、 これを突き止めるのに4時間かかったぜ・・・ 似た問題に遭遇してる人は参考にしてください。
136 名前:nobodyさん mailto:sage [2013/09/22(日) 03:48:28.58 ID:???] >>129 あざっす、そこに載っていたのか そのページ前からあった?以前英語のページ含め結構探したんだが… ソースは基本読まないで使うなあ、バグ解析などで必要にならないと読まない 他人のコード読みながら作る時間があったら自分で作るからなあ
137 名前:nobodyさん mailto:sage [2013/09/22(日) 03:49:53.63 ID:???] >>135 再現してみたいので出来ればもうちょい詳しくお願いします。 バーチャルフィールドの指定ってのは User::$virsutalFields = array(...); ってことでいいのかな?
138 名前:nobodyさん [2013/09/22(日) 04:17:47.94 ID:ILax0A3i] >>136 >他人のコード読みながら作る時間があったら自分で作るからなあ フレームワーク使う意味ないんじゃ…
139 名前:nobodyさん mailto:sage [2013/09/22(日) 04:30:37.36 ID:???] なんで?言ってる意味がわからん
140 名前:nobodyさん mailto:sage [2013/09/22(日) 12:58:56.82 ID:???] 作るのが面倒、時間ないからFW使うんじゃないよ むしろそういう奴は使わない方がいいと思う
141 名前:nobodyさん mailto:sage [2013/09/22(日) 13:56:20.61 ID:???] は?FWって開発速度を上げるために使うものだろ 他に何のメリットがあるんだよ
142 名前:nobodyさん mailto:sage [2013/09/22(日) 14:03:11.87 ID:???] >>141 速度だけだと思ってるなら勉強しなおせ。
143 名前:nobodyさん mailto:sage [2013/09/22(日) 15:00:26.29 ID:???] 開発速度あげるだけなら、オレオレが一番早いと思うが。 自分が好きなように作れるんだし
144 名前:nobodyさん mailto:sage [2013/09/22(日) 16:08:37.23 ID:???] えっ どんな低機能のフレームワークだよ…
145 名前:nobodyさん mailto:1 [2013/09/22(日) 19:24:19.17 ID:???] > FWって開発速度を上げるために使うもの wwwwくそわろた
146 名前:nobodyさん mailto:sage [2013/09/22(日) 21:32:19.12 ID:???] セッション切れ問題がデータベースを空にしたら治った 原因不明過ぎて怖い
147 名前:nobodyさん mailto:sage [2013/09/22(日) 23:04:15.03 ID:???] そういうのあるね。特にAuth関係は不可解なこと多い
148 名前:nobodyさん [2013/09/22(日) 23:12:27.52 ID:1/Rn/nVo] 本番でなったら恐ろしすぎるんだけど
149 名前:nobodyさん mailto:sage [2013/09/22(日) 23:59:51.35 ID:???] ま、nanapiとかランサーズとか 有名な会員サイトで使えてるんだから、何とかなるでしょ
150 名前:nobodyさん mailto:sage [2013/09/23(月) 00:16:18.34 ID:???] Twitterのあうth認証って新しく作ったアカウントだと拾ってくれなかったりする?
151 名前:nobodyさん mailto:sage [2013/09/23(月) 05:48:35.98 ID:???] >>146 > セッション切れ問題がデータベースを空にしたら治った > 原因不明過ぎて怖い あ、それ簡単だよ。セッションが壊れてるの MySQLはデフォルトの設定で文字数が定義より多くて 溢れても、途中で切れるだけで処理が正常終了しちゃうんだよね。 その時、壊れたセッションが出来上がる。
152 名前:nobodyさん mailto:sage [2013/09/23(月) 10:30:15.39 ID:???] >>145 何もおかしいこと言ってないと思うんだけど何が面白いのかな
153 名前:nobodyさん mailto:sage [2013/09/23(月) 10:43:47.86 ID:???] やっぱそうだよね 俺もそう思っていた
154 名前:nobodyさん mailto:sage [2013/09/23(月) 13:37:52.78 ID:???] コントローラーに書いてある$thisってなにがはいってるの? 何を指してるの?
155 名前:nobodyさん mailto:sage [2013/09/23(月) 13:43:42.09 ID:???] マジで言ってんの?
156 名前:nobodyさん mailto:sage [2013/09/23(月) 13:49:32.13 ID:???] CakeはSecurity.levelの設定をhighにしてるとわけのわからないセッション切れとか問題てんこ盛りで起きる 仕方なくmediumで使うと安定している
157 名前:nobodyさん mailto:sage [2013/09/23(月) 14:34:05.91 ID:???] >>152 お前も勉強しろ
158 名前:nobodyさん mailto:1 [2013/09/23(月) 16:47:11.98 ID:???] >>152 「フレームワーク メリット」でぐぐって勉強しましょう。 >>154 クラスを勉強しましょう。
159 名前:nobodyさん mailto:sage [2013/09/23(月) 17:10:55.17 ID:???] 反論できないと見える
160 名前:nobodyさん [2013/09/24(火) 10:22:15.50 ID:PewVrVzx] cakeのわかりにくさは、モデルのわかりにくさ、単数形複数形の使い分けの分かりにくさに直結してると思う
161 名前:nobodyさん mailto:sage [2013/09/24(火) 10:48:16.58 ID:???] 思いません
162 名前:nobodyさん mailto:sage [2013/09/24(火) 11:01:06.76 ID:???] マジックメソッド、コールバックメソッド、 リフレクションを用いた初期設定値の自動マージ、 そのあたりの隠蔽された処理の把握に苦戦する。 とは言え、これはCakeに限ったことじゃないが。
163 名前:nobodyさん mailto:sage [2013/09/24(火) 12:09:00.22 ID:???] >>162 オレもいまCake使ってて モデルが単数形でコントローラーが複数形だけど それって他のフレームワークも同じ? フォームヘルパーとか$this->request->data=$this->Post->read()の値をフォームで使えるようにするらしいけど $this->set('xxx',$this->request->data);じゃなくて そのまま使えるけどそれも隠蔽されてるっていうの?
164 名前:nobodyさん mailto:sage [2013/09/24(火) 13:18:17.37 ID:???] >>153 一人のキチガイが根拠も示さず必死に否定してるけど 開発速度向上はフレームワークのメリットのひとつだよ
165 名前:nobodyさん mailto:sage [2013/09/24(火) 13:56:07.30 ID:???] >>163 未作成のモデルをCakePHPみたいに暗黙的に呼び出すというのは俺は知らない。 SynfonyにしろCodeIgniterにしろテーブルと関連付けた アクティブレコードを明示する必要があって、 そこで単数形にするかどうかは好きにすればって感じだったと思う。 > フォームヘルパーとか$this->request->data=$this->Post->read()の値をフォームで使えるようにする え、そうなん?初耳だわ。
166 名前:nobodyさん mailto:sage [2013/09/24(火) 14:28:03.92 ID:???] >>165 >ほとんどの場合、このような形式を意識することはありません。 >CakePHPの FormHelper やモデルのfindメソッドは全てこの形式に従っています。 >FormHelperを使っていれば、 $this->request->data で簡単にこの形式のデータにアクセスできるようになっています。 $this->setに代入じゃなくて $this->request->dataに代入で使える 変なの
167 名前:nobodyさん [2013/09/24(火) 14:53:11.90 ID:2aQmFqKG] そこまでやってくれなくても… って感じだな
168 名前:nobodyさん mailto:sage [2013/09/24(火) 16:31:42.77 ID:???] モデルを単数形、テーブルを複数形、コントローラーを複数形っていうルールは他のフレームワークも同じですか? 教えてください
169 名前:nobodyさん mailto:sage [2013/09/24(火) 16:36:08.50 ID:???] >>164 141を読んでくれ。これをどう解釈するかだ。
170 名前:nobodyさん mailto:sage [2013/09/24(火) 17:46:21.20 ID:???] 単数形、複数形の問題ってビューのコーディング時にも悩むんだよな
171 名前:nobodyさん mailto:sage [2013/09/24(火) 18:01:42.34 ID:???] >>169 他に何のメリットがあるの? 開発速度以外はデメリットだらけだろ オープンソースのFWはオレオレ作る時間がない時に仕方なく使うもの
172 名前:nobodyさん mailto:sage [2013/09/24(火) 18:10:35.82 ID:???] >>171 品質の向上とかあるだろggrks。 cakeが最良とは言わんが、今の時勢でフレームワークを使うことを考慮しないのはありえん。
173 名前:nobodyさん mailto:sage [2013/09/24(火) 18:12:57.27 ID:???] >>171 メリットのひとつだけど他にもいろいろあるでしょ
174 名前:nobodyさん mailto:sage [2013/09/24(火) 18:24:26.00 ID:???] >>171 ・利用者が多いので、プラグイン作成の手間が省ける ・大規模サイトでも利用されてる安心感 ・命名規則が統一してるから、名前付けで悩まなくてもいい ・不特定多数で開発する時、意思の疎通が図りやすい ・コピペで作っても不具合が起きづらい ・公式が現在も開発を続けている安心感 まだ続けてるか?
175 名前:nobodyさん mailto:sage [2013/09/24(火) 18:28:31.88 ID:???] >>171 逆に実行速度以外オレオレのメリットがないような
176 名前:nobodyさん mailto:sage [2013/09/24(火) 18:29:58.01 ID:???] >>175 そもそも実行速度求めるならPHP使う必要があるのかと。
177 名前:nobodyさん mailto:sage [2013/09/24(火) 18:34:34.37 ID:???] スレが伸びてると思えば、 やはり不毛なフレームワーク論争かw
178 名前:nobodyさん mailto:sage [2013/09/24(火) 18:38:55.69 ID:???] PHPを使うとどうせ遅いんだから、という理由で速度を全く気にしないというわけにもいかないよな
179 名前:nobodyさん mailto:sage [2013/09/24(火) 18:50:09.35 ID:???] >>178 「遅い」の定義は要件次第だから、前提条件がないとこれもまた不毛な議論に。
180 名前:nobodyさん mailto:sage [2013/09/24(火) 21:21:03.36 ID:???] cakeでは簡単なことしかできないように思える。 cakeで凝ったつくりのサイトとかあったら教えてもらえませんか?
181 名前:nobodyさん mailto:sage [2013/09/24(火) 21:39:34.62 ID:???] >>180 逆にcakeでできないことって何だろう。。。 根性あれば大抵できると思うんだが。
182 名前:nobodyさん mailto:sage [2013/09/24(火) 23:14:27.72 ID:???] >>180 そもそもあんたが言っている「凝った作りのサイト」が どういったものなのかわからないので答えようがない。 cake以外で作っていてもいいから、 まず「凝った作りのサイト」の例をいくつか上げてくれ。 サイトいうだけじゃなく凝ってる部分はどこかも言うように。
183 名前:nobodyさん mailto:sage [2013/09/25(水) 00:17:25.95 ID:???] facebookとかtwitterとか言い出したりしてw
184 名前:nobodyさん mailto:sage [2013/09/25(水) 00:26:04.71 ID:???] CakeでSNS作ったんだけどどうやって集客すんの?
185 名前:nobodyさん [2013/09/25(水) 01:34:52.18 ID:QAhhx/Ja] それcakephpと関係ないような…
186 名前:nobodyさん mailto:sage [2013/09/25(水) 01:50:11.08 ID:???] >>184 ケーキ食べ放題とかでアピール、かな・・・
187 名前:nobodyさん mailto:sage [2013/09/25(水) 13:03:59.31 ID:???] Cake最新版を落としてきて、cake test core AllTestsをやったら Fatal error: Class 'PagesController' not found と出るんだけど、なにこれテスト通らないのにリリースされてんの?
188 名前:nobodyさん mailto:sage [2013/09/25(水) 14:54:07.29 ID:???] >>187 そのテストはお前に必要なのか?
189 名前:nobodyさん mailto:1 [2013/09/25(水) 21:12:17.21 ID:???] >>178 PHPだから遅いのは確かだが、その中でも早いフレームワークは出てきてる。 >>180 「凝った作りのサイト」ってよくわからんが技術が無いだけじゃないの? >>184 SEO対策だね。初歩しか知らんからそれ以上はなにも言えないw
190 名前:nobodyさん mailto:sage [2013/09/25(水) 23:37:22.39 ID:???] 人間がストレスたまらないスピードなら遅いって言われる部類でも構わない
191 名前:nobodyさん mailto:sage [2013/09/26(木) 00:26:56.50 ID:???] >>189 SEO対策は集客のためにするんじゃないぞ。 SEOは単に検索エンジンにとって適切な作りにするだけだ。 それによって、検索した時の順位が上がることがあるが、 集客できるかどうかはコンテンツ次第。
192 名前:nobodyさん mailto:sage [2013/09/26(木) 21:43:37.36 ID:???] htmlヘルパーのhtml->imageのurlで生成されるa要素に属性をつけることは可能でしょうか? やり方がございましたらご教示お願いします
193 名前:nobodyさん mailto:sage [2013/09/26(木) 22:53:10.81 ID:???] 出来ません。 HtmlHelper::link() メソッドでラップするなり何なりして下さいませ。
194 名前:nobodyさん mailto:sage [2013/09/26(木) 23:27:13.45 ID:???] まだhtmlヘルパーなんてのあるんだね。 プログラムに処理させるのは簡単なループと条件判定とURLぐらいにして 普通にタグを書くべきだという結論にいたったけどね。
195 名前:nobodyさん mailto:sage [2013/09/27(金) 02:25:34.52 ID:???] まぁまぁ賛同するわ、その意見
196 名前:nobodyさん mailto:sage [2013/09/27(金) 11:37:18.57 ID:???] >>193 やっぱりそうなりますか ありがとうございます >>194 現在ページのけつにスラッシュありかなしかで相対パスが変わってしまうのを無視できるのでヘルパー使ってます 絶対パスだったら生でいいと思います
197 名前:nobodyさん mailto:sage [2013/09/27(金) 13:21:36.12 ID:???] PHPスレがないのでここで質問しますが PHPでバリデーションする場合ってどうやってますか? cakephpみたいにvalidateのmessage=>'エラー'とかみたいなのがあればいいのですが ライブラリをぐぐっても多すぎて困ってます PHP長年やってる人はどのようにしてるのでしょうか? いちいちif分で2ページにわたり書いてました フレームワークを使わないでPHPでやる方法の上級者の意見を参考にしたいです教えてください 使ってるライブラリ名とかでもいいです
198 名前:nobodyさん mailto:sage [2013/09/27(金) 16:33:01.11 ID:???] あ
199 名前:nobodyさん mailto:sage [2013/09/27(金) 17:16:00.06 ID:???] >>197 いちいち二ページ書くのがいやだからフレームワークを使う フレームワークを使うのが嫌なら二ページ書くしかないだろ
200 名前:nobodyさん mailto:sage [2013/09/27(金) 17:54:19.34 ID:???] 2ページって・・・ ひょっとしてノートにでも書いてるの?
201 名前:nobodyさん mailto:sage [2013/09/27(金) 18:11:54.74 ID:???] >>197 cakephpにはvalidateのmessage=>'エラー'とかみたいなのがあるのでそれを使います。
202 名前:nobodyさん mailto:age [2013/09/27(金) 20:46:51.61 ID:???] 複数のページにauth認証をかけていて、ログインしたuserは全てのページが見られるようになってるんですが、 特定のユーザーだけ、特定のページのみ閲覧可能にする方法はございますでしょうか ご教示お願いいたします
203 名前:nobodyさん mailto:sage [2013/09/27(金) 23:51:29.97 ID:???] 特定のユーザーか否か判定して正しければ正規のアクションを実行し、 そうでなければエラーページ表示しろ
204 名前:nobodyさん mailto:sage [2013/09/28(土) 00:10:22.06 ID:???] >>202 ACO, ARO を使ったアクセス制御を勉強して下さい。 CakePHPの組み込みで3種類の設定が用意されています。 データベースを用いた方法が最も柔軟で高機能ですが、 管理が複雑になるので始めはiniファイルかphpファイルを用いたやり方がオススメです。 設定ファイルは app/Config/acl.ini.php app/Config/acl.php のいずれかをカスタマイズして用います。 チュートリアルには残念ながらデータベースを用いる方法しか載っていませんが、 ググればある程度日本語の資料も出てくると思います。
205 名前:nobodyさん mailto:sage [2013/09/28(土) 01:32:35.29 ID:???] >>204 cakebookが本当にひどいな。見ない方がいい。普段はcakebookの出来には寛大だが、こればかりは無理!
206 名前:nobodyさん mailto:sage [2013/09/28(土) 01:43:14.41 ID:???] >>196 いえ、ですからaタグのhrefのURLの部分だけでいいと言ってるんです。
207 名前:nobodyさん mailto:sage [2013/09/28(土) 02:24:59.99 ID:???] HtmlHelper::link() にかぎらず、使い所だけおさえておけばいいんじゃない? フレームワークってあくまでも標準を提供するだけであって、 規約でさえも単なるバリエーションの一形態として捉えたんで良いのではないかと。 規約に縛られ過ぎも良くないし、規約を無視し過ぎも良くない。 中庸が良いと思う。
208 名前:nobodyさん mailto:sage [2013/09/28(土) 07:50:01.51 ID:???] >>203 どうもです たしかにそれがシンプルですね >>204 ACO,AROですね 勉強してみます おすすめの方法の方向でやってみたいと思います ありがとうございました
209 名前:nobodyさん mailto:sage [2013/09/28(土) 10:59:00.81 ID:???] >>204 aco,aroっていまいち使いどころがわからない。 例えばあるページの一部のリンクの表示をユーザーによってオンオフする場合、 aco,aroを使い、かつ、ボタンの表示制御のコードも書くよね。 なんか楽になってない気がするんだよね。
210 名前:nobodyさん mailto:sage [2013/09/28(土) 12:27:13.28 ID:???] >>209 ACO, AROしらんけど、ユーザーによってオンオフするという機能の 作り方にある種の壁がある。 ・壁を乗り越えられない人 if ($user == 'admin') { 管理画面表示 } こんなコードを書く ・壁を乗り越えた人 if ( 権限があるか?('管理画面', $user) ) { 管理画面表示 } こんなコードを書く 前者はユーザーが増えた時どうするの? 新たにグループ作りたくなったらどうするの? adminだけど特定の場合(無料ユーザー等)には 管理画面の一部を消したくなったらどうするの? などなど拡張性が低い。(全体的にメンテナンスが必要になるしコードも見づらくなる) 後者の書き方をしておけば、引数のユーザーから いろんな条件を元に表示する権限を決めるだけだから拡張性が高い。 ACO, AROは、後者の壁を乗り越えた人だけが理解できる機能だと思う。
211 名前:nobodyさん mailto:sage [2013/09/28(土) 13:52:09.15 ID:???] >>210 adminだけど特定のユーザーに管理画面解放する使い方って? 俺の認識では、管理画面とユーザー用管理画面は 分けるべきだと思うが。共通化するなんて怖い
212 名前:nobodyさん mailto:sage [2013/09/28(土) 14:23:58.43 ID:???] リクエストとレスポンスのお互いを集合論的に捉えることが出来るのが ACO,AROの最大のメリット。 だと思う。
213 名前:nobodyさん [2013/09/28(土) 14:56:21.69 ID:mm0OqWTD] みなさんはviewにヘルパーとか使いまくりますか?
214 名前:nobodyさん mailto:sage [2013/09/28(土) 15:13:51.00 ID:???] ビューにヘルパーは使った事がありません ビューは非プログラマに書かせるから、ctp自体使わずHTMLに近いテンプレートシステム使ってます
215 名前:nobodyさん mailto:sage [2013/09/28(土) 18:23:01.86 ID:???] >>211 説明の仕方が悪かったね。 adminでもGoogle Appのように 無料契約やビジネス契約によって機能が制限されることはある。 そういう話だったが、普通に田中さん(マネージャー)とか そういう例えにしておけばよかったね。
216 名前:nobodyさん mailto:sage [2013/09/28(土) 19:02:36.41 ID:???] ACO,AROは名前が紛らわしい
217 名前:nobodyさん mailto:sage [2013/09/28(土) 20:16:14.74 ID:???] ACO - アクセスコントロールオブジェクト(Access Control Object) - ある主体が取り扱う「物」 ARO - アクセスリクエストオブジェクト(Access Request Object) - ある物を取り扱う「主体」
218 名前:nobodyさん mailto:sage [2013/09/28(土) 20:22:28.91 ID:???] >>217 何もわからねえぞ 理系か
219 名前:nobodyさん mailto:sage [2013/09/28(土) 22:27:35.62 ID:???] たとえばdiariesテーブルに複数人のdiaryがまとめて入っているとして、 他人のdiaryが見られないように制御をするとしたら、ACO&AROの仕組みでは対応できなくない? リクエストを受けたときに、そのユーザーが対象のactionを実行できるかできないかの制御しかできないんでしょ?
220 名前:nobodyさん mailto:sage [2013/09/28(土) 23:57:31.97 ID:???] CakePHP1系の情報ブログに書いてる人、消してくれないかなあ… 検索時邪魔でしょうがない、確実に今開発してる人の生産性を少しずつ下げてる
221 名前:nobodyさん mailto:sage [2013/09/29(日) 01:03:09.68 ID:???] >>219 デフォルトというか、Cakeの組み込みはそうです。 でも拡張すれば出来なくはない。 昔やったことがある。 ただ、管理が分けわからなくなって嫌になったんで、そのやり方は封印して 結局PHPの設定ファイルに書き込む方法に落ち着いた。 まぁ、俺が下手なのは認めるとして、逆に言うと、下手な人間にも使えるような うまい仕組みとはいえないと思う。
222 名前:nobodyさん mailto:sage [2013/09/29(日) 01:12:36.30 ID:???] 下手な人でも使えるなんてのは幻想だよ。 だから技術職というものがあり、 技術があることで金を稼いでいるんだ。
223 名前:nobodyさん mailto:sage [2013/09/29(日) 01:54:05.25 ID:???] >>220 久々に感動した自己中
224 名前:nobodyさん mailto:sage [2013/09/29(日) 01:58:37.63 ID:???] ワロタ
225 名前:nobodyさん mailto:sage [2013/09/29(日) 02:04:25.72 ID:???] そもそもの元凶は 2で仕様変え過ぎ
226 名前:nobodyさん mailto:sage [2013/09/29(日) 13:11:03.72 ID:???] 検索するとき期間を1年以内にすれば大体問題ないよ
227 名前:nobodyさん mailto:sage [2013/09/29(日) 13:37:17.57 ID:???] そんなことどうやってできるの
228 名前:nobodyさん mailto:sage [2013/09/29(日) 13:43:46.71 ID:???] あ、できたw
229 名前:nobodyさん mailto:sage [2013/09/29(日) 13:48:05.32 ID:???] もしかしてChromeじゃないとできないとかある?
230 名前:nobodyさん mailto:sage [2013/09/29(日) 13:52:02.75 ID:???] URLに自分でパラメータをつければいんじゃね? &tbs=qdr:yみたいに
231 名前:nobodyさん mailto:sage [2013/09/30(月) 13:40:06.80 ID:???] >>214 俺はヘルパー使いまくりだけど、HTMLに近いてSmartyみたいな感じ?
232 名前:nobodyさん mailto:sage [2013/09/30(月) 14:07:01.24 ID:???] サイト全体で共通の関数はどこにかくのかな!?
233 名前:nobodyさん mailto:sage [2013/09/30(月) 14:08:21.98 ID:???] vendors
234 名前:nobodyさん mailto:sage [2013/09/30(月) 17:13:49.37 ID:???] 自分で作るならLib サードパーティー製ならVendors book.cakephp.org/2.0/en/getting-started/cakephp-folder-structure.html
235 名前:nobodyさん [2013/09/30(月) 21:53:03.23 ID:YNM1OLM4] emailコンポーネントを利用してメール送付しようとしてるのですが 送信処理はできてもヘッダーにtoがないのですが原因などわかりますでしょうか・・・
236 名前:nobodyさん [2013/09/30(月) 22:56:45.74 ID:YNM1OLM4] すいません。単純にポートが閉じているだけでした・・・
237 名前:nobodyさん mailto:sage [2013/09/30(月) 23:32:26.73 ID:???] Webアプリ開発を加速する CakePHP2定番レシピ119 っていう本がでたらしいのですが どうですかね? 最近CakePHPはじめたばっかりなので 本かおうとおもってますが
238 名前:nobodyさん [2013/09/30(月) 23:52:23.59 ID:II3eS9V+] 質問です。 Cakeのwebroot下にWordpressをインストールしました。 一応稼働できてはいるのですが、 URLがルートの場合はwebroot内にあるWordpressディレクトリを表示したいのですが htaccessで可能でしょうか?
239 名前:nobodyさん mailto:sage [2013/10/01(火) 04:54:23.88 ID:???] 思いつかん
240 名前:nobodyさん mailto:sage [2013/10/01(火) 09:02:42.29 ID:???] こないだからCakeでテスト書いてるが、難しいな…。 どうしてもテストか実際の実行かで分岐しないといけない個所があるんだけど Cakeで「今テスト中か?」の確実な判定はどうすればいいのでしょう 開発してたら知りたくなるこういうことが公式には載ってないんだよなーという一例
241 名前:nobodyさん mailto:sage [2013/10/01(火) 11:07:03.38 ID:???] テスト書くのはとても高いスキルの要ることだと思うよ。 Cakeだからむずかしいってことではないと思う。 Cake本体のテストケース見てみ。 すっげー大変なことしてるから。 テスト中の判定はいくつかやりかたはあると思うけど、 それってテストの書き方に問題があるのでは?
242 名前:nobodyさん mailto:sage [2013/10/01(火) 11:10:07.46 ID:???] なんかおかしな書き方になってしまったが、 要するにCake本体のテストもかなりえげつないことしてるけど、 それはCakeだからそうなったってことではないだろうということ。 あとどうしても判定したいなら CakeTestSuiteDispatcher.php で定数定義してるんで、 それを使ってみるとか。 あとは $_SERVER の SCRIPT_NAME を見るとか。
243 名前:nobodyさん mailto:sage [2013/10/01(火) 13:16:24.04 ID:???] あざっす、SCRIPT_NAME見ることで解決しました モデルにどのDBから読み込むか(マスターとスレーブ)動的に変更している所があって テスト時にそこが本来のDB読みに行こうとしてハマってた等、回避不可能なことがいくつもあってな いやーテストって本当難しいわ、製品作るより難しい テストに関する情報が少ないのも難易度を上げてるな、本とかにも大抵ちょろっとしか載ってないもんな
244 名前:nobodyさん mailto:sage [2013/10/01(火) 14:25:16.95 ID:???] まじめにTDDやったら「テスト書くほうが時間がかかるんじゃないか?」 ってレベルじゃねーな テストを書く時間9割で 残り実コード書く時間とテスト走らせる時間が5分5分
245 名前:nobodyさん mailto:sage [2013/10/01(火) 14:29:15.29 ID:???] デグレで困らなくなるから先行投資だと思え と言いつつ設計と実装を同時に進めるチャランポランな俺はTDDが出来ない
246 名前:nobodyさん mailto:sage [2013/10/01(火) 15:03:39.29 ID:???] 納品して終わりならテストは書かない、そうしないととても納期に間に合わない 運用も任されたり長年使い続けるシステムならテスト書く、そうしないと1年後は毎日バグフィクスで潰れる
247 名前:nobodyさん mailto:sage [2013/10/01(火) 15:57:47.39 ID:???] 2.2.9を使っています。 外部PHPプログラムからCakeの結果(findで生成される配列など)を 受け取りたいのですが、可能でしょうか? 1.3系はググって見つかったのですが、2系は見つかりません。 もし可能なら方法を教えてください
248 名前:nobodyさん mailto:sage [2013/10/01(火) 16:00:33.49 ID:???] >>247 1.3系でどういった情報が見つかったの?2系で基本的に違いがあるとも思えないけど。
249 名前:247 mailto:sage [2013/10/01(火) 17:43:00.64 ID:???] >>248 以下で紹介されている方法を参考にしました。 ttp://web.mt-systems.jp/archives/783 1.3系はこの方法で動きますが、2系ですと一部の関数や命名規則が変わっているので、 この通りにやっても動きません。 Dispatcherの書き方の問題だと思うのですが、 ソースを見てもどうやって実行値を取得すれば良いか、わかりませんでした・・。
250 名前:nobodyさん mailto:sage [2013/10/01(火) 18:10:43.96 ID:???] 読んでみたが、何がやりたいのかさっぱり分からなかった orz...
251 名前:nobodyさん mailto:sage [2013/10/01(火) 18:29:49.41 ID:???] >>249 そこまでしてでも組み込みたいのか。。。 素直にバッチ化して呼び出すとか、WebAPI経由で呼べばいいものを。。。
252 名前:nobodyさん mailto:sage [2013/10/05(土) 01:07:51.95 ID:???] Cake2になってよくわからないので誰か教えてくだしあ コントローラの途中で特定の条件を満たすとヘッダが404を出して終わり (ブラウザには404 Not foundが表示される)としたいのだが、 CakeResponseというのを使うらしいのだがドキュメント見て $this->response->httpCodes(404); return; とか $this->response->statusCode(404); return; とかやっても、ページが表示されてしまう 後者は404が返るようにはなるのだが、ビューの内容も返してしまってるようだ 要は header('404 Not Found', true, 404); $this->_stop(); と同じ結果にしたいのだが、CakeResponseを使って書くにはどうすればいいのだろう?
253 名前:nobodyさん mailto:sage [2013/10/05(土) 02:07:14.57 ID:???] throw new NotFoundExeption();
254 名前:nobodyさん mailto:sage [2013/10/05(土) 02:14:19.09 ID:???] >>252 Cake2 からしか知らないけど、ヘッダの送出、ビューの指定の二つだけ行って リターンしたらいいんじゃないの? if ($error) { $this->response->statusCode(404); $this->view = 'error'; return; } みたいな感じで。 あと、例外を投げても一部のクラスは 404 になるんだけど、それは知ってる?
255 名前:nobodyさん mailto:sage [2013/10/05(土) 02:15:37.07 ID:???] あ、253 が先に書いて
256 名前:nobodyさん mailto:sage [2013/10/05(土) 04:04:25.49 ID:???] >>249 >$_GET['url']に文字列「favicon.ico」をセットすると、require_once で読み込んだ index.php の実行が dispatcher を動作せずに終了するようになっている。 バッドノウハウ過ぎて、製品にはこわくて使えねーよw https://github.com/cakephp/cakephp/blob/1.3/app/webroot/index.php#L82 https://github.com/cakephp/cakephp/blob/2.2.9/app/webroot/index.php#L91-92 まぁ一応ソースで確認してみた。 faviconは見ての通りなくなってるので諦めろ。 と、ここまで書いてから思ったが、要するにgithubでハイライトされてる最後の2行を消したファイルを作って、 require_onceすればできんじゃねーの?
257 名前:nobodyさん mailto:sage [2013/10/05(土) 04:18:28.90 ID:???] >>252 $this->response->httpCodes()はgetterだから意味ないぞ。 $this->response->statusCode(404); $this->autoRender = false; return; これで、$this->render('index');と明示的に書かない限り、レンダリングされないので、 body部が空になると思われ。 動確はしてない。
258 名前:nobodyさん mailto:sage [2013/10/05(土) 13:04:41.41 ID:???] 初心者なんですけどfindしたときに一時的にアソシエーションをなくすってことは可能なんですか?
259 名前:nobodyさん mailto:sage [2013/10/05(土) 18:22:31.88 ID:???] それは流石に本でも買ってきて読んで来いなレベル。
260 名前:nobodyさん mailto:sage [2013/10/05(土) 18:26:41.61 ID:???] 可能
261 名前:nobodyさん mailto:sage [2013/10/05(土) 19:24:53.67 ID:???] >>259 俺のレベルに丁度いい本教えて
262 名前:nobodyさん [2013/10/05(土) 19:35:08.52 ID:cB/QUfLz] >>261 ドットインストールと詳解でなんとかなった 実践入門とかも読んだなぁ
263 名前:nobodyさん mailto:sage [2013/10/05(土) 20:36:15.64 ID:???] Model::unbindModel()
264 名前:nobodyさん mailto:sage [2013/10/05(土) 20:37:41.87 ID:???] っていうか、 "CakePHP findしたときに一時的にアソシエーションをなくす" でぐぐったら出てくるんですが・・・
265 名前:nobodyさん mailto:sage [2013/10/06(日) 10:47:59.39 ID:???] みんな、MySQLのENUMって使ってる?
266 名前:nobodyさん mailto:sage [2013/10/06(日) 11:57:58.32 ID:???] 何回bakeしても Your database configuration was not found って出てくるどうすりゃいいの? index.php と test.phpのコメント行は外しました
267 名前:nobodyさん mailto:sage [2013/10/06(日) 12:03:15.88 ID:???] できました。 アプリケーションルートディレクトリで実行してないだけでした
268 名前:nobodyさん mailto:sage [2013/10/07(月) 13:48:06.58 ID:???] viewの中で <?php ほにゃらら ?> としてif文やらechoやらを書くのがいまだに理解できない
269 名前:nobodyさん mailto:sage [2013/10/07(月) 17:46:40.29 ID:???] Dispatcher::dispatch() とか View::evaluate() を見てみると良いかも
270 名前:nobodyさん mailto:sage [2013/10/08(火) 00:59:47.40 ID:???] そういうルールなんだよ
271 名前:247 mailto:sage [2013/10/08(火) 09:11:47.61 ID:???] >>256 遅レスですみません。 その2行を消して実行ファイルでDispatcherを宣言しても CakeRequest側の受取が上手く行かずに、データ取得できませんでした。 そもそも、どうやって外部ファイルからrequestを受け取るのか・・・ 全てCakeのフォルダ内で管理したいというよりも、 一部だけCakeを使いたいor既に使っている物をCakeに変更したい などの需要があると思ったのですが、意外と無いですね。 findはSQL文でSELECTを書けばいいし、PDOを使えば簡単に取得出来るので、 外部ファイルからCakeを通す必要性がないのかもしれません。
272 名前:nobodyさん mailto:sage [2013/10/08(火) 13:46:34.36 ID:???] ちょと何言ってるのかよく分かって無いかもしれないんだが、 要するに結果を通常のビューじゃなくて JSONで出力するとかって話じゃないのか?
273 名前:nobodyさん mailto:sage [2013/10/08(火) 14:04:35.31 ID:???] それみていい事思いついた! www.php.net/manual/ja/function.file-get-contents.php すればいいじゃん! <?php $homepage = file_get_contents('www.example.com/ '); echo $homepage; ?> PHPなら2行で通信するプログラムも書けるよ!! 俺はセキュリティ的にこわくてできないけどな
274 名前:247 mailto:sage [2013/10/08(火) 16:34:38.21 ID:???] >>272-273 いえ、Cake形式の配列でfindの結果を受け取りたいんです。 で、>>249 の方法なら出来るのです。 でも、2系だと無理です。なので質問しました。
275 名前:nobodyさん mailto:sage [2013/10/08(火) 16:58:21.71 ID:???] JSONで受け取れないか?
276 名前:nobodyさん mailto:sage [2013/10/08(火) 17:00:13.50 ID:???] あぁ、HTTPリクエストとしてじゃなくて同一プロセスでか。 分かった。
277 名前:nobodyさん mailto:sage [2013/10/09(水) 02:02:54.44 ID:???] >>274 > これで posts コントローラの index アクションを実行し、レンダリングされた結果が表示できる。 dispatch()したら、findの結果じゃなくビューをレンダリングした結果だぞ。 その1.3でできてるってのも、上記の通りだし。
278 名前:247 mailto:sage [2013/10/09(水) 09:57:04.46 ID:???] >>277 1.3の場合、>>249 の説明にもありますが、 以下の様なソースで、対象コントローラのfind結果を取得できます。 requestActionみたいな感じです。良かったら試してみてください。 $_GET['url'] = 'favicon.ico'; require_once 'index.php'; $Dispatcher = new Dispatcher; $list = $Dispatcher->dispatch('/news/index', array('return' => 1)); foreach ($list as $data) { echo $data['News']['created'] . ':' . $data['News']['title'] . "<br>"; }
279 名前:nobodyさん mailto:sage [2013/10/09(水) 11:28:30.56 ID:???] Shell で使うShellDispatcher と ConsoleOutput と ConsoleInput を拡張して Shell を走らせてみるとか class MyOutput extends ConsoleOutput { public function write($messege, $newlines = 1) { // $message でデータを受け取ってあれこれする.... } } class MyInput extends ConsoleInput { // 面倒なので適当に考えてくれ } class MyDispatcher extends ShellDispatcher { protected function _getShell($shell) { //... なんやかんや $shell = new Shell($myOutput, $myErrorOutput, $myInput); //... なんやかんや return $shell; } } ---- <?php $args = array(.....); new MyDispatcher($args)->run(); みたいな感じで。 取得したいデータは $myOutput をパイプみたいにしてゲット。 どう?
280 名前:nobodyさん mailto:sage [2013/10/09(水) 14:26:40.63 ID:???] 天才あらわる
281 名前:nobodyさん mailto:sage [2013/10/10(木) 04:29:12.84 ID:???] なんやかんやわろた
282 名前:nobodyさん mailto:ss [2013/10/12(土) 20:34:20.88 ID:???] 質問です。よろしくお願いします。 ユーザーが自分で更新出来るCMSを作成してます そこでユーザーが更新するたびにgoogle等にインデックスされるようにしたいです こういった場合みなさんはどうやってインデックスさせてますか? cakeと関係ない質問かもしれませんが便利なやり方があるかもと思い質問しました よろしくお願いします
283 名前:nobodyさん mailto:sage [2013/10/12(土) 21:40:23.39 ID:???] Google買収!
284 名前:nobodyさん mailto:sage [2013/10/12(土) 23:39:11.12 ID:???] ping送信ぐらい? あとsitemap更新とか。 どっちにしてもGoogle次第
285 名前:nobodyさん mailto:sage [2013/10/13(日) 01:02:29.28 ID:???] pingを自動的に送信するようにですね ユーザーが作成したページが検索に乗るようにするって結構難しいのかな 登録・更新のたびにsitemap作成するスクリプトとか流してたら相当重くなりそうですよね 親切にありがとうございます
286 名前:nobodyさん mailto:sage [2013/10/13(日) 02:27:44.36 ID:???] 更新はともかく、新しくURIが増えるんなら、sitemap.xmlは生成したほうがいいんじゃ
287 名前:nobodyさん [2013/10/13(日) 15:45:55.81 ID:fH7wT7an] >>286 ありがとうございます 深夜辺りにcronで動くように設定したいと思います 完全にスレチでした。すみませんでした
288 名前:nobodyさん [2013/10/15(火) 17:36:39.11 ID:tnpde/Hs] 逆アクセスを設置したいのですが、お勧めはありますか? 今は、自作 or Googleアナリティクスを考えています。
289 名前:nobodyさん mailto:sage [2013/10/15(火) 20:16:47.76 ID:???] ACR WEB使え
290 名前:nobodyさん mailto:sage [2013/10/19(土) 09:01:10.85 ID:???] 東京からみた大阪は南チョン。 大阪から東京は北チョン。
291 名前:nobodyさん mailto:sage [2013/10/23(水) 01:11:43.94 ID:???] コントローラの中で getuser( $user_id, $age) { } と引数を2つで指定しているとします。 hogehoge.com/getuser/333/25 → OK hogehoge.com/getuser/333 でアクセスされた場合に Missing argument 2 for UserController::getuser() というエラーが出てしまうのですが、事前にアクセスの想定されるURL以外でアクセスが来た場合に それを上記の様なエラーが出る事無く弾くにはどうすれば良いでしょうか? コントローラの中のファンクションで .Net の optional 的な引数指定の方法はありませんか?
292 名前:nobodyさん mailto:sage [2013/10/23(水) 02:18:32.08 ID:???] public function getuser() { $args = func_get_args(); if (count($args) < 2) { ... error ... } }
293 名前:nobodyさん mailto:sage [2013/10/23(水) 02:53:19.47 ID:???] 291です。 >>292 そんな便利なコードがあったのですね。 ありがとうございます!!
294 名前:nobodyさん mailto:sage [2013/10/23(水) 04:27:05.04 ID:???] え?正気か? デフォルト引数値使えよ public function getuser( $user_id, $age = nulll ){ if(empty($age)){ // hogehoge.com/getuser/333 の場合 } else { // hogehoge.com/getuser/333/25 の場合 } }
295 名前:nobodyさん mailto:sage [2013/10/23(水) 05:35:12.35 ID:???] empty使わずとも、nullしてるんだからifだけでいいじゃん
296 名前:nobodyさん mailto:sage [2013/10/23(水) 11:58:33.55 ID:???] サンプルだからelse書いたけど、$ageがない場合にちょっと処理入れるだけってのが多くね? だから、empty($age)から書いたが、このままじゃ分かりにくいと思ってelseを後付けしたんだ。 あと、例外的なほうから書くほうが好みというのもあるけど。
297 名前:nobodyさん mailto:sage [2013/10/23(水) 13:17:01.27 ID:???] >>294 色んな方法があるんですね。
298 名前:nobodyさん mailto:sage [2013/10/23(水) 22:10:06.74 ID:???] いろんなっつうか、>>292 を常用してると死ぬぞ
299 名前:nobodyさん [2013/10/23(水) 22:22:55.02 ID:TvTq8mzB] >>298 なぜ? あと、関係ないけど ERROR:referer情報が変です。(ref1)www.engawa.2ch.net/test/read.cgi/budou/ ほげほげ/l50 武道板になぜか書き込みができないんだけどなぜ?
300 名前:nobodyさん [2013/10/24(木) 00:57:55.24 ID:ZRTs6kHv] cakePHP でMySQLの Limit 句と同じ事を以下の様なコードを記述し 試しているのですがなぜかデータの絞り込みが出来ません。 また、何もエラーも出ません。 $data_company = $this->find('all', array( 'conditions' => array( 〜 略 〜 ), 'fields' => array('company_id','company_name'), 'order' => array('sequence_number' => 'asc'), array('offset' => '0','limit' => '5'), )); ここでは、取得対象データが300件返って来るけれども 5行のみ取得する、という事を想定して記述しています。 どこに問題があるのでしょうか?
301 名前:nobodyさん mailto:sage [2013/10/24(木) 01:30:15.64 ID:???] >>300 orderのカッコと、fieldsとoffsetを囲ってあるカッコを取って下さい。
302 名前:nobodyさん mailto:sage [2013/10/24(木) 01:32:31.18 ID:???] こんな感じ。 $data_company = $this->find('all', array( 'conditions' => array( 〜 略 〜 ), 'fields' => array('company_id','company_name'), 'order' => 'sequence_number asc','limit' => '5', ));
303 名前:nobodyさん mailto:sage [2013/10/24(木) 02:29:39.52 ID:???] >>301 >>302 ありがとうございます。 やりたかった事が出来そうです!! ※cakePHPに標準で備わっているページング処理よりも 自前でコーディングした方が後々細かい制御が出来てよいと思ってましたので limit使ってガリガリやろうと思います。
304 名前:nobodyさん mailto:sage [2013/10/24(木) 02:53:38.76 ID:???] >>303 絶対ページング使うべき。 ajaxにも対応してるし。
305 名前:nobodyさん mailto:sage [2013/10/24(木) 03:28:39.25 ID:???] ですね。使わないと損。 細かい制御ができないというのなら直ちに調べたほうが良い。
306 名前:nobodyさん [2013/10/25(金) 23:49:39.14 ID:AB+nrtPz] >>304 >>305 前へ 次へ ... >> << 色々とやってましたが素直にページング使った方が楽そうなのでページングを使い始めました^^b
307 名前:nobodyさん [2013/10/26(土) 21:52:14.71 ID:Zi7Pbhr3] $work_check_number には、 float型の0.4が入っています。 この状態で以下のコードを実行すると想定外の出力結果が 返って来ます。何が間違っているのでしょうか? var_dump($work_check_number); echo "<br>"; if ( $work_check_number <= (float)0.4 ) { echo "debug-1<br>"; } else { echo "debug-2<br>"; } 【想定出力結果】 float(0.4) debug-1 【実際に出力される結果】 float(0.4) debug-2
308 名前:nobodyさん [2013/10/26(土) 22:11:25.69 ID:5t9gsaZZ] ryo511.blog.jp/archives/23887883.html
309 名前:nobodyさん mailto:sage [2013/10/27(日) 03:55:38.51 ID:???] >>308 勉強になるますだ
310 名前:nobodyさん [2013/10/27(日) 17:26:30.48 ID:dxTjMq1b] phpでfloat型の大小比較って凄くメンドクサイな。
311 名前:nobodyさん mailto:sage [2013/10/27(日) 17:47:06.22 ID:???] >>310 大小比較とこの問題は関係ないよ IEEE754を採用してる言語なら事情はどこも似たようなもの $a = 0.4; $b = 0.4 + 2.2204460492503131e-016; var_dump($a); # float(0.4) var_dump($b); # float(0.4) var_dump($a == $b); # bool(false) var_dump($a < $b); # bool(true)
312 名前:nobodyさん mailto:sage [2013/10/27(日) 17:57:13.61 ID:???] >>310 どの言語でもそうだと思うよ
313 名前:nobodyさん mailto:sage [2013/10/28(月) 10:28:14.68 ID:???] てか、小数点は上手くいかない場合多いから、使わないな 俺の使い方が悪いだけかもしれないが
314 名前:nobodyさん [2013/10/31(木) 15:20:24.96 ID:S0k5dQpe] cakePHP の Model で SQL で言うところの IN 指定はどうやって記述すればよいのでしょうか?
315 名前:nobodyさん mailto:sage [2013/10/31(木) 15:25:47.92 ID:???] >>314 arrayを渡す
316 名前:nobodyさん mailto:sage [2013/10/31(木) 16:24:28.47 ID:???] informationは確かに変化しない英単語かもしれんけど、 だからってinformationテーブルにInformationControllerが正しいと、 それなりに開発が進んでから気がついたときの怒りは、 どこにぶつければいい?
317 名前:nobodyさん [2013/10/31(木) 18:32:50.75 ID:S0k5dQpe] >>315 ありがとうございます。 無事出来ました!!
318 名前:nobodyさん [2013/10/31(木) 18:53:54.33 ID:S0k5dQpe] select user_id, user_age,user_nme from users where ( user_id = 1 and user_age = 30 ) and ( user_id = 2 and user_age = 25 ) and ( user_id = 3 and user_age = 28 ) cakePHPのconditionsで上記の様なSQLを実行させる書き方はありますか? 'conditions' => array( 'users.user_id =' => 1, 'users.user_age =' => 30, ), 現在ループしながら複数クエリを発行しているのですが 纏めて1回のクエリで必要データを取得したいと考えています。
319 名前:nobodyさん mailto:sage [2013/10/31(木) 20:03:43.30 ID:???] >>316 英語の勉強を疎かにしてきた自分を呪えば良いと思うよ まぁ、冗談は抜きにして、英語の基礎ができてないと色々とキツイよな。
320 名前:nobodyさん mailto:sage [2013/10/31(木) 20:07:38.67 ID:???] >>318 あの・・・ and はカッコ外しても論理構造同じですが。 もし 'or' を入れたいのなら、キーに 'and' とか 'or' とかを用いて 幾重にも入れ子に出来たはず。 キーが数値の場合は 'and' として解釈するんだったっけ。
321 名前:nobodyさん mailto:sage [2013/10/31(木) 20:08:43.64 ID:???] っていうか、その元のクエリ何だよw
322 名前:nobodyさん mailto:sage [2013/10/31(木) 20:10:49.38 ID:???] (間違い) and はカッコ外しても論理構造同じ (正しい) and だけの場合はカッコ外しても論理構造同じ ミスった
323 名前:nobodyさん [2013/10/31(木) 20:11:08.33 ID:pvMz+FsK] >>320 >>321 間違えました。 ただしくは、 select user_id, user_age,user_nme from users where ( user_id = 1 and user_age = 30 ) or ( user_id = 2 and user_age = 25 ) or ( user_id = 3 and user_age = 28 ) です。 キーに or を入れて試してみたいと思います。
324 名前:nobodyさん mailto:sage [2013/10/31(木) 20:15:46.01 ID:???] $cond1 = array('user_id' => 1, 'user_age' => 30); $cond2 = array('user_id' => 2, 'user_age' => 25); $cond3 = array('user_id' => 3, 'user_age' => 28); $conditions = array('or' => array($cond1, $cond2, $cond3);
325 名前:nobodyさん [2013/10/31(木) 20:23:43.34 ID:pvMz+FsK] >>324 あざーすっ! コードがすっきりしました!!
326 名前:nobodyさん mailto:sage [2013/10/31(木) 20:38:39.33 ID:???] まあmysqlはor使うと遅くなるんだけどね
327 名前:nobodyさん mailto:sage [2013/10/31(木) 23:42:41.93 ID:???] 漢ならフルスクラッチ
328 名前:nobodyさん mailto:sage [2013/11/01(金) 00:32:03.09 ID:???] 女傑ならソケットでMySQLプロトコル
329 名前:nobodyさん mailto:sage [2013/11/01(金) 17:39:10.37 ID:???] >>316 bakeすればいいのに
330 名前:nobodyさん mailto:sage [2013/11/01(金) 17:45:57.99 ID:???] bakeはほぼ使わないなぁ
331 名前:nobodyさん mailto:sage [2013/11/01(金) 22:05:00.04 ID:???] テーブルのレコードに突っ込んでる時点で数えられるから問題ない 外人がfishesという単語を見て魚の缶詰を思い浮かべるのと同じ
332 名前:nobodyさん mailto:sage [2013/11/02(土) 01:30:30.01 ID:???] bake 使わない開発が想像できないんだが
333 名前:nobodyさん mailto:sage [2013/11/02(土) 09:23:48.01 ID:???] いつも0から作り始める人ならそうだろうね
334 名前:nobodyさん [2013/11/02(土) 14:49:14.45 ID:YSV0Zcpf] bake とか使った事がない。 そもそも何に使うの? 良い解説サイトがあったら教えてください。
335 名前:nobodyさん mailto:sage [2013/11/02(土) 18:00:44.69 ID:???] 別にbakeを使う必要はない。 bakeってのはCakePHPが参考した Railsで使われていた仕組みで、 たんに、こんなに早く作れるんだよと なんども練習して撮影したデモを 一秒でも短くするために生まれた道具にすぎない。 そう。3分クッキングのように、 あらかじめ用意しておきましたって コードを生成するもの。
336 名前:nobodyさん mailto:sage [2013/11/02(土) 18:25:11.54 ID:???] Searchプラグインって標準では、区切りに全角スペースでは、複数単語検索できないんだね 不便だわ
337 名前:nobodyさん mailto:sage [2013/11/02(土) 20:32:04.62 ID:???] ある程度まとまった複数のモデルを bake all して、 それをごそっとプラグインに隔離して 適宜削ったり追加したり開発するのはとても便利で早い。
338 名前:nobodyさん [2013/11/02(土) 20:42:12.21 ID:oRF20owz] html5 で作られた infinite mario すげぇえ。 とおもってたら グラディウスまで作ってる強者がいた。 ここまで出来るのか。。。
339 名前:nobodyさん [2013/11/02(土) 20:43:40.35 ID:oRF20owz] rappdaniel.com/experiment/cubed/ html5 でここまでできるのか。
340 名前:nobodyさん mailto:sage [2013/11/02(土) 22:07:26.87 ID:???] うちは管理用の画面作るときはまず bake から始めるけどなぁ。 誰が作ってもほぼ同じものができるのは良いよ。 テンプレートをカスタマイズしてるから 元の姿とは全くと言っていいほど違ってはいるけど。
341 名前:nobodyさん mailto:sage [2013/11/02(土) 22:18:01.50 ID:???] いや、ファイルコピーすればいいですし・・・。
342 名前:nobodyさん mailto:sage [2013/11/02(土) 22:57:11.17 ID:???] >>341 (言ってはいけないことを。。。)
343 名前:nobodyさん mailto:sage [2013/11/03(日) 00:08:16.61 ID:???] bakeって何が化けるの?
344 名前:nobodyさん mailto:sage [2013/11/03(日) 00:21:41.67 ID:???] >>343 つまらん
345 名前:nobodyさん mailto:sage [2013/11/03(日) 20:14:17.87 ID:???] 管理画面はbakeするけど、フロント側はちょっとねぇ。 モデルも開発中盤になってくると、bakeしただけで手の入ってないモデルがいくつか出てくるから、 コピーして必要なとこだけ変えたほうが早かったりするんだよな。
346 名前:nobodyさん mailto:sage [2013/11/03(日) 23:30:20.68 ID:???] bakeって言ったって 完全に全自動化出来るわけじゃなく、 色々質問されるしな。 前回なんて答えたかなんて覚えていないし、 bakeをする回数は少ないのですぐに使い方を忘れる。
347 名前:nobodyさん mailto:sage [2013/11/04(月) 01:31:23.58 ID:???] >>346 うちはとにかく bake all だわ。 アソシエーションの制約なんか厳しくて、 かなり CakePHP のルールを守らないと通らないので、 それがかえって誰が作っても同じ出来になるという安心感がある。 それに、コマンドで個別に設定するぐらいならファイル直接触ったほうが楽。
348 名前:nobodyさん [2013/11/05(火) 22:46:56.28 ID:HKwreGpo] cakeって便利だけど最初の設定って結構面倒じゃないですか? あとは使っているサーバのスペックが足りなくて 別サーバに引っ越しをする時とか結構手間に感じるのですが皆さんは如何ですか?
349 名前:nobodyさん mailto:sage [2013/11/06(水) 00:41:09.71 ID:???] なんかCakePHPならではの設定することあったっけ?
350 名前:nobodyさん mailto:sage [2013/11/06(水) 01:43:53.69 ID:???] DBの設定は面倒だけど、1ファイルの修正で済むからな。 あと、FTPでアップした時のtmpのパーミッション設定は地味に面倒w
351 名前:nobodyさん [2013/11/06(水) 07:11:23.30 ID:jY+jk4/6] >>350 確かにtmp面倒くさいよな
352 名前:nobodyさん mailto:sage [2013/11/06(水) 12:09:46.63 ID:???] >>350 俺、多分変更してないけど問題ないな。
353 名前:nobodyさん [2013/11/06(水) 19:21:57.33 ID:CGtOvjTe] >>349 例えばcakePHP2 で作っていたシステムを 新サーバ+cakePHP3 に移行する時とか大変じゃない? cakePHP3をサーバに設定した後に、 cakePHP2のソースを手動でしかるべき箇所に移動させて しっかり新バージョンでも動くかどうか検証とかしなくちゃならないでしょ? 一発で移動とか出来ると楽なんだけどね。
354 名前:nobodyさん mailto:sage [2013/11/06(水) 19:28:12.00 ID:???] >>353 既存プロジェクトで使ってるフレームワークのメジャーバージョンを上げたら、 そりゃぁ大変だろうよ。 CakePHPに限らずな。
355 名前:nobodyさん mailto:sage [2013/11/06(水) 21:06:22.08 ID:???] Cake3ってもう使ってる人いるの?
356 名前:nobodyさん mailto:sage [2013/11/06(水) 22:24:56.97 ID:???] cakePHP2.0 で ログインしていない場合には閲覧させない様な クローズドコンテンツを作成しよとしています。 そこで、ログインしていない場合には閲覧させない為に コントローラのファンクションの中で以下のコードを書いているのですが、 コントローラのファンクションの中では毎度以下の if(ログイン判定) の コードを記述する必要があるのでしょうか? HogeController.php public function top() { if(!$this->Auth->login()) { //ログインしていないので特定ページ(TOP)へ飛ばす。 return $this->redirect($this->Auth->redirect()); } }
357 名前:nobodyさん mailto:sage [2013/11/06(水) 22:29:20.54 ID:???] >>356 Authコンポーネントを良く調べろ。
358 名前:nobodyさん mailto:sage [2013/11/06(水) 22:32:14.86 ID:???] >>357 'loginAction' => Array('controller' => 'tops', 'action' => 'index'), 色々と試したみたのですが、これでOKですか?
359 名前:nobodyさん mailto:sage [2013/11/06(水) 22:39:31.12 ID:???] >>358 book.cakephp.org/2.0/ja/tutorials-and-examples/blog-auth-example/auth.html
360 名前:nobodyさん mailto:sage [2013/11/07(木) 00:07:19.08 ID:???] Google Cromeで指定した文字列をクリップボードに コピーするプログラムを作っています。 $('#id_hoge' ).click( function() { var str_text = "あいうえお"; var copyArea = $("<textarea/>"); copyArea.text(str_text); $("body").append(copyArea); copyArea.select(); document.execCommand("copy"); copyArea.remove(); }); "あいうえお" がクリップボードにコピーされると思ってたのですが なぜかされません。cromeでは使えないのでしょうか?
361 名前:nobodyさん mailto:sage [2013/11/07(木) 03:12:22.57 ID:???] プラグインの日本語情報が異常に少ないんだよね これじゃなかなか広まらないな
362 名前:nobodyさん mailto:sage [2013/11/07(木) 14:17:00.21 ID:???] 広まらないっていうか、これからどんどん情報減ると思うよ。 自分で調べて情報公開したりするような開発者は、 もうCakePHPなんて飽きてるだろうし。 今は、普通に使えるようになってる人が、普通に仕事をこなすのに使ってる感じじゃね。 書籍も一時期は沢山出てたけどいまはそうでもないしな。
363 名前:nobodyさん mailto:sage [2013/11/07(木) 14:34:27.14 ID:???] 猫も杓子もcakephpの時代が異常だっただけ 今はいいフレームワークがいっぱいあるし あえてcakephpを選ぶ理由がないからね
364 名前:nobodyさん [2013/11/07(木) 14:44:14.56 ID:cHcjC9vh] FWはもう、cakePHPに統一しようぜ。
365 名前:nobodyさん mailto:sage [2013/11/07(木) 14:52:19.69 ID:???] 統一するとしてもcakephpだけはやめて codeigniter, fuelphp, laravel, yiiのどれかで
366 名前:nobodyさん mailto:sage [2013/11/07(木) 14:52:21.96 ID:???] cakephpは日本が異常だっただけよ 今もオフショア先では大人気
367 名前:nobodyさん mailto:sage [2013/11/07(木) 14:55:55.60 ID:???] >>365 fuelphpはpsr-0に対応しなかったこととかいろいろあって人気つかないな codeigniter、laravel、yiiは世界では人気だけど日本だと微妙
368 名前:nobodyさん mailto:sage [2013/11/07(木) 15:04:27.70 ID:???] www.techempower.com/benchmarks/#section=data-r7&hw=i7&test=json cakeぼろぼろだ 昔のライバルsymfonyには辛うじて勝利
369 名前:nobodyさん [2013/11/07(木) 16:27:36.49 ID:urHtWp+p] FWといよりプログラマのスキルによるんじゃねーの。 レスポンスとかさぁ。
370 名前:nobodyさん mailto:sage [2013/11/07(木) 18:19:09.69 ID:???] codeigniterとか作りが前時代的過ぎてなぁ・・・ その4つの中ならlaravelがいいな
371 名前:nobodyさん mailto:sage [2013/11/07(木) 18:25:45.15 ID:???] Sinatra風のルーティングは見やすいんだが PHPとは相性が悪い リクエストの度にパスの数だけClosureオブジェクトを作ってると考えたらぞっとする
372 名前:nobodyさん mailto:sage [2013/11/07(木) 20:37:01.47 ID:???] Sinatra風ルーティングは、マイクロFW系向きじゃないかな
373 名前:nobodyさん [2013/11/07(木) 20:55:50.09 ID:TVGLaC0N] 悪い事は言わない Yiiを使える、進めるヤツはせめてToeic 800点位とってから使おうな。 英語も出来ないのに間隔で変な名前をあちこちに量産されたら迷惑
374 名前:nobodyさん mailto:sage [2013/11/07(木) 23:10:35.42 ID:???] >>373 なんでYii限定?
375 名前:nobodyさん mailto:sage [2013/11/07(木) 23:33:39.73 ID:???] TOELCといえばYii
376 名前:nobodyさん mailto:sage [2013/11/07(木) 23:35:41.14 ID:???] わけがわからないよ
377 名前:nobodyさん mailto:sage [2013/11/08(金) 02:55:52.80 ID:???] 漢字もちゃんと使えてない人に言われてもなー
378 名前:nobodyさん mailto:sage [2013/11/08(金) 19:07:09.93 ID:???] 話題のbakeを試してみたんだけど、命名規則通りにテーブルを作って cake bake all モデル名 とやったんだけど、 Error: Table ないテーブル名 for model ないモデル名 was not found in datasource default. とエラー。生成されたモデルを見てみると、勝手に存在しないモデルの$belongsToが書かれてた。 これは何?なんでそうなるのでしょう。
379 名前:nobodyさん mailto:sage [2013/11/08(金) 19:51:29.62 ID:???] >>378 テーブル名書けよ
380 名前:nobodyさん mailto:sage [2013/11/08(金) 22:22:57.25 ID:???] テーブル名だけじゃなくてスキーマ全部と、 DATABASE_CONFIG::$default['prefix'] の値も忘れずに
381 名前:nobodyさん mailto:sage [2013/11/09(土) 01:13:36.00 ID:???] IISにそのままCake載せただけじゃ動かないですよね? どうすりゃいいんですか?
382 名前:nobodyさん mailto:sage [2013/11/09(土) 02:28:19.11 ID:???] IISなんて知らんがな
383 名前:nobodyさん mailto:sage [2013/11/09(土) 11:02:53.97 ID:???] >>381 チュートリアルに書いてるじゃん
384 名前:nobodyさん mailto:sage [2013/11/09(土) 22:59:18.49 ID:???] え、IISかい。Apache使わないの?
385 名前:nobodyさん [2013/11/10(日) 08:55:33.38 ID:0LvUSNX1] すみません教えて頂ければ幸いです CakePHP2.3でフォームで確認画面を制作しているのですがバリデーションが効きません 自分で調べていったんモデルにはセットするとの事で $this->Model->set($this->request->data); if($this->Model->validates()){成功の時の処理} 上記の様にしているのですがエラー等も全く出ずただバリデーションが効いていない形です よろしければどなたか教えて頂けませんか
386 名前:nobodyさん mailto:sage [2013/11/10(日) 11:47:08.36 ID:???] どんなコードを書いているかも分からないのに答えようがない
387 名前:nobodyさん mailto:sage [2013/11/10(日) 19:22:06.34 ID:???] より高度なRoRに引っ越しすることをお勧めしよう Railsスレで質問すれば俺が答えてあげよう その代わり最大限の敬意を示し、パソコンの前で土下座したまえ そお誠意が俺まで伝わってきたら答えてあげる 多くの有力企業が採用するRoRにようこそ
388 名前:nobodyさん mailto:sage [2013/11/10(日) 20:12:12.51 ID:???] 今すぐ辞めて欲しい、「Ruby on Rails勉強してます」「CakePHP勉強してます」 blog.sumyapp.com/2013/07/no-recommend-rails/
389 名前:nobodyさん mailto:sage [2013/11/10(日) 20:28:10.59 ID:???] >>388 書いてある内容がイマイチわからん。
390 名前:nobodyさん mailto:sage [2013/11/10(日) 21:34:39.51 ID:???] 人の作ったプログラム触るのcakephpでも嫌なんだけど、俺だけ? できれば一から作りたいと思ってしまう。
391 名前:nobodyさん mailto:sage [2013/11/10(日) 22:07:59.18 ID:???] >>389 CakePHPやる前にPHPはちゃんと理解してんだろうな?てことじゃないかな
392 名前:nobodyさん mailto:sage [2013/11/10(日) 23:43:46.77 ID:???] というか勉強しなきゃ使えないようなものか?て気がする
393 名前:nobodyさん mailto:sage [2013/11/11(月) 01:04:57.32 ID:???] cakephpやりながらphp覚えてもいいと思うね
394 名前:nobodyさん mailto:sage [2013/11/11(月) 02:24:03.68 ID:???] ここはやはりだめだ、Stackoverflowで聞いてくる
395 名前:nobodyさん mailto:sage [2013/11/11(月) 06:16:43.22 ID:???] それが2chというものだよ
396 名前:nobodyさん mailto:sage [2013/11/11(月) 11:04:10.26 ID:???] 捨て台詞残さずにさっさと消えろよ
397 名前:nobodyさん mailto:sage [2013/11/11(月) 12:40:31.09 ID:???] >>394 解決していないのはどの質問だろうか?
398 名前:nobodyさん [2013/11/12(火) 00:26:13.49 ID:O3AZzxQU] 1つだけのチェックボックスをcakePHPヘルパーを使ってレンダリングしようとしています。 その為に次のコードを記述し echo $this->Form->input( 'totaling' , array( 'type' => 'checkbox', 'label' => false, )); ・・・@ 実行すると <div class="input checkbox"> <input type="hidden" name="data[User][totaling]" id="UserTotaling_" value="0"> <input type="checkbox" name="data[User][totaling]" value="1" id="UserTotaling"> </div> こんなコードが生成されてしまいます。 本当は次の様なタグが生成される事を想定しています。 @のコードの何処に問題があるのでしょうか? <input type="checkbox" name="data[User][totaling]" checked="checked" id="UserTotaling">
399 名前:nobodyさん mailto:sage [2013/11/12(火) 00:56:26.23 ID:???] ヘルパーでタグ生成とかやめてほしいわ。 調べてみたけど、Railsもそうなんだろ? HTMLはウェブデザイナーのもの だからプログラミング要素を極限まで減らすべき。 そういった考えで作られた フレームワーク(テンプレートエンジン)って 無いものかねぇ。 でも低機能なフレームワークを求めてるんじゃないんだ。 こういうinputみたいなものはそのままHTMLでかけて 面倒な部分を改善できるそんなフレームワーク
400 名前:nobodyさん mailto:sage [2013/11/12(火) 01:00:45.10 ID:???] あぁ、ぐちっちゃった。 >>398 その質問の答はCakePHP使ってないんで知らないけど、 なんでそんなコードが出力されるか知ってる? それはチェックボックスは、 チェックしたらdata[User][totaling]=1が送られてくるけど、 チェックしなかった時data[User][totaling]=0ではなく、 なにも送られてこないんだよ。最終行のコードではね。 それの対策が 、「こんなコード」なわけ。 ここまで言えば、どうすればいいかわかるんじゃない? そう、チェックしない場合に値を送る機能を OFFにする設定があるはずだ。
401 名前:nobodyさん mailto:sage [2013/11/12(火) 02:01:30.93 ID:???] >>399 formヘルパーは使った方がいいと思うよ。htmlヘルパーは使わない方がいいかもだけど。
402 名前:nobodyさん mailto:sage [2013/11/12(火) 02:22:03.84 ID:???] 同じくFormHelperやHtmlHelper嫌い。 でも、使わないとハマったり困ることあるから、しぶしぶ使ってる。
403 名前:nobodyさん mailto:sage [2013/11/12(火) 08:35:49.27 ID:???] >>399 JavaにはほぼHTMLをテンプレートに使えるのあるけどPHPは無理だろうな
404 名前:nobodyさん mailto:sage [2013/11/12(火) 09:05:04.81 ID:???] bakeのビューのテンプレートで、どこかにかっこいいの落ちてたりしないでしょうか まあデフォルトのでもOKっちゃOKなんだけど
405 名前:nobodyさん [2013/11/12(火) 10:32:08.86 ID:ZxfwGxWG] >>400 サンクス。 checkboxをcakePHPのヘルパー使って書くとなぜ hidden が生成されるかの理由が分かりました。
406 名前:nobodyさん mailto:sage [2013/11/12(火) 11:37:30.04 ID:???] >>403 Javaってどれのことだ? ZPT系を使えば良いだけだと思うんだが
407 名前:nobodyさん mailto:sage [2013/11/12(火) 11:41:20.37 ID:???] >>399 もはや、デザイナーとの役割分担のラインは変わってるよ 旧態依存の開発やってれば別だろうが
408 名前:nobodyさん mailto:sage [2013/11/12(火) 13:01:19.39 ID:???] FormHelper はタグのラッピングが頑固なところはあるな。 クラス名とか触れないところ多いし。 妥協すればとても便利なツールではあるんだが。
409 名前:nobodyさん mailto:sage [2013/11/12(火) 13:42:41.13 ID:???] Cakeのヘルパーみたいなローカルルール、外注のコーダーに教え込んで使わせる気にはとてもならんから ヘルパー使ったこと無いわ
410 名前:nobodyさん mailto:sage [2013/11/12(火) 16:29:44.75 ID:???] >>403 まさかMayaaのことじゃないだろうな? >>404 探せばBootstrapベースのがあるんじゃね。
411 名前:nobodyさん mailto:sage [2013/11/12(火) 17:01:24.88 ID:???] >>407 同意。CSSですら、Sass使ってプログラム的な管理するからな。 デザイナーはデザインだけやって、 コーディングはコーダーではなく、プログラマがやる時代になるよ
412 名前:nobodyさん [2013/11/12(火) 17:02:26.87 ID:GncxjoFv] プログラマ=コーダーだろ
413 名前:nobodyさん mailto:sage [2013/11/12(火) 17:14:40.96 ID:???] >>412 別の意味での旧態依存の世界の話だ
414 名前:nobodyさん mailto:sage [2013/11/12(火) 17:33:48.33 ID:???] どう考えてもフレームワークいじる奴とビュー作る奴は分担した方がいい
415 名前:nobodyさん [2013/11/12(火) 20:55:59.85 ID:jQBt36at] システムだと一通り何でも出来るけど どうもWEBデザインがうまくないと自分でも思う。 どうやったら見栄えの良いサイトが作れるのかな? 先ずは何から勉強すべきですか?
416 名前:nobodyさん mailto:sage [2013/11/12(火) 21:11:38.61 ID:???] >>415 ttp://getbootstrap.com/2.3.2/getting-started.html
417 名前:nobodyさん mailto:sage [2013/11/12(火) 21:17:21.91 ID:???] >>415 Bootstrapとかの上からデザインしてくれるデザイナーがいっぱいいるよ
418 名前:nobodyさん [2013/11/12(火) 21:22:11.96 ID:jQBt36at] >>416 >>417 うーん。いまいちそのサイトのテンプレートもカッコよくないですね。 何かWEBデザイナの作成する様なスタイリッシュなデザインのサイトを自分で作れる様になりたいんですよね。 よく無料テンプレートサイトとかあるでしょ? あーいうサイト(デザイン)テンプレートを自分で作れる様になりたいのです。
419 名前:nobodyさん mailto:sage [2013/11/12(火) 21:39:26.80 ID:???] >>418 PHPと全然関係ないけど、平面構成の本とか読んでみるのはどうかしら
420 名前:nobodyさん mailto:sage [2013/11/12(火) 21:48:23.37 ID:???] bootstrapのステマが酷い スルー推奨
421 名前:nobodyさん mailto:sage [2013/11/12(火) 22:04:10.58 ID:???] ほれ bakeの解説 ttp://hijiriworld.com/web/cakephp-bake/
422 名前:nobodyさん mailto:sage [2013/11/12(火) 22:16:50.91 ID:???] なんかうまく読み込めないな、そのブログ 無駄にJS使うのやめて欲しいなあ、ただのブログのくせに
423 名前:nobodyさん [2013/11/12(火) 22:23:23.76 ID:jQBt36at] >>419 読んでみます。 >>421 ステマ臭いけど確かに見易い解説サイトですね。 自慢したいのかしら。
424 名前:nobodyさん mailto:sage [2013/11/12(火) 22:35:23.88 ID:???] 読んだけど初歩的なことしか書いてなかった 誰でも知ってることを丁寧に解説しても無価値だな
425 名前:nobodyさん mailto:sage [2013/11/12(火) 22:36:21.38 ID:???] まずは、グリッドデザインを勉強すればいいよ。 それがある程度できれば、崩してかっこいいデザインが出来るようになる。
426 名前:nobodyさん [2013/11/12(火) 23:22:35.94 ID:jQBt36at] ログインしていないと閲覧出来ないページにおいて サーバ再度のバリデーションを作らずに javascriptだけだと不味いですか?
427 名前:nobodyさん [2013/11/12(火) 23:57:17.43 ID:SAG0peet] ケースバイケース
428 名前:nobodyさん mailto:sage [2013/11/13(水) 00:11:16.12 ID:???] >>426 >>427 時間が無いので認証必須のページではJavaScriptだけ 実装していますが、セキュリティー的に問題は無いか若干心配しています。 そもそも認証されていないとサーバにどんな値がポストされようが そもそもリクエストは遮断される筈なので安心 と考えているのですが・・・
429 名前:nobodyさん mailto:sage [2013/11/13(水) 00:21:37.21 ID:???] 時間がないのに2chで質問は出来るんだな
430 名前:nobodyさん mailto:sage [2013/11/13(水) 01:39:40.82 ID:???] >>407 え? 役割分担が変わったって まさか君んところはプログラマが大変な方向に変わったの? 大変だねぇ。間違った方向に進んでしまったね。 >>411 > 同意。CSSですら、Sass使ってプログラム的な管理するからな。 Sass使ったからって、プログラム的な管理をしたらダメだよ。 Sassは、文法的にはSCSSを使う。これでCSSと互換。 計算やifやforなどのプログラム的要素は原則として使わない。 今まで使わないでできたんだから、大半は使わないで出来るはず。 SCSSで使っていいのはネストとextendとplaceholder等 計算できるようになった。ifやループが出来るようになった。わーい。 なんて考えなしに使うから、プログラマしか扱えないようになるんだよ。 自分の仕事を大変にするようなことはするなよ。 他人でも出来るようにしておけば、自分が楽になるぞ。
431 名前:nobodyさん mailto:sage [2013/11/13(水) 03:01:46.38 ID:???] 純粋な善意でもステマと言われるこのご時勢 嫌だね〜
432 名前:nobodyさん mailto:sage [2013/11/13(水) 08:46:45.51 ID:???] 役割分担が変わったのは自社サービスやってるとことかだろ JavaScriptの問題だろ 受託とかのほとんどは役割分担かわってない
433 名前:nobodyさん mailto:sage [2013/11/13(水) 09:09:21.54 ID:???] JavaScript? 下手なプログラマが作ると、JavaScriptで cssいじったりするよね。 そういう話だったら、プログラマが馬鹿なだけってことだけど。 普通はJavaScriptでいじるのはCSSクラス名だけで 原則としてCSSはいじらない。
434 名前:nobodyさん mailto:sage [2013/11/13(水) 09:27:26.37 ID:???] え?普通はJavascriptでCSSのIDもクラスもいじると思うが。 Googleのコーディング規約とか、そう書いてるよ。 どこの原則なのか気になるなー
435 名前:nobodyさん mailto:sage [2013/11/13(水) 09:35:30.68 ID:???] 受託だろ
436 名前:nobodyさん mailto:sage [2013/11/13(水) 09:39:16.24 ID:???] お金のあるなし関係あるだろな。 デザイナにCSSもHTMLも任せた方が安上がり。
437 名前:nobodyさん mailto:sage [2013/11/13(水) 10:23:29.63 ID:???] もっと言えば、デザインもプログラムも扱える奴に 一括で任せたほうが安上がり。 CMS程度ならそれほどデザイン力も求められないしな。
438 名前:nobodyさん mailto:sage [2013/11/13(水) 12:38:34.67 ID:???] >>433 はクラスやIDの操作までは問題にしてないと思う CSSのプロパティの有無や値をJavaScriptで直接いじるのはよろしくないって意味だろ? 見た目とロジックを両方JavaScriptに任せるのはあまり良い設計じゃない アニメーションなんかはある程度仕方ないけど
439 名前:nobodyさん mailto:sage [2013/11/13(水) 12:57:43.60 ID:???] >>438 役割分担のJavaScript部分で噛み付いてるから、もろ問題にしてる
440 名前:nobodyさん [2013/11/13(水) 13:27:54.87 ID:1DbvJ5ZT] >>437 なかなかいない。どちらかよりだろ。
441 名前:nobodyさん mailto:sage [2013/11/13(水) 13:33:26.00 ID:???] >>440 いると思うけどな。マッチングサイトとかその手の募集ばかりじゃん。 あんなもん、複数人数でやってたらどうやっても赤だよ
442 名前:nobodyさん mailto:sage [2013/11/13(水) 13:39:20.44 ID:???] >>440 基本プログラムよりだよ。デザインはテンプレ系で済ませて これ以上のデザインは後からやってくださいってのが多い デザイナに今求められてるのって、主なテンプレ系で作られたサイトに CSS被せてデザインする能力
443 名前:nobodyさん mailto:sage [2013/11/13(水) 14:30:30.66 ID:???] >>433 こないだやった仕事が、まさにそれをやっててイラっとした。 cssファイルを見ても何処にも書いてないスタイルがあっておかしいなと思ったら $('#hoge').css()で色々設定してあんの。 あとついでに、cssもcssで、 .mB7{ margin-bottom: 7px !important; } .mB10{ margin-bottom: 10px !important; } みたいなのが、left top right bottom全部に、数px毎の間隔で定義してあって、すごい困った。
444 名前:nobodyさん mailto:sage [2013/11/13(水) 21:38:36.71 ID:???] >>442 > デザイナに今求められてるのって、主なテンプレ系で作られたサイトに > CSS被せてデザインする能力 CSS+HTMLだな。 CSSだけで完結することってないし。 当たり前だけど、HTMLとCSSはウェブデザイナーの仕事 Sassももちろんウェブデザイナーの仕事だよ。 あれはCSSの拡張でしかないんだから。 (Sassの動作環境を作るのぐらいは手伝うけど) そしてこれも当たり前だけど、JavaScriptはプログラマの仕事。 ただし、JavaScriptでデザインを変えてはいけない。 変えるのはクラス名ぐらい。 テンプレートはHTMLがメインなのでウェブデザイナの仕事 テンプレート変数なんかはプログラマが特殊なタグを 置かせてもらってる的な感覚でやるべき。 ウェブデザイナーもバカじゃないので、教えたルールは理解してくれる。 ウェブデザイナーーが手に負えなくなるぐらいコードが含まれるのであれば それはプログラマのテンプレートの使い方が悪い。 うーん、上で言ったのと同じことを言ってるだけだなw
445 名前:nobodyさん mailto:sage [2013/11/13(水) 21:51:20.71 ID:???] 受託だろ
446 名前:nobodyさん mailto:sage [2013/11/13(水) 21:52:31.94 ID:???] >>443 >$('#hoge').css() こうやるとコメントアウトが楽なんです。 って言われて俺もイラっと来た記憶ある
447 名前:nobodyさん mailto:sage [2013/11/13(水) 22:17:37.75 ID:???] htaccess使えないサーバでもCake2系を使う方法ってありませんか?
448 名前:nobodyさん mailto:sage [2013/11/14(木) 01:37:31.90 ID:???] あれ?PATH_INFOを使って動かなかったっけ?
449 名前:nobodyさん mailto:sage [2013/11/14(木) 01:57:11.42 ID:???] bootstrap3ってどう? ここだとboostcakeか
450 名前:nobodyさん mailto:sage [2013/11/14(木) 02:00:23.48 ID:???] BoostCakeになってから、Bootstrapベースでのbake機能がなくなったから使ってないなぁ。 Bootstrap3ベースのスケルトンで良いのがあったら使おうかなって思ってるけど、 積極的には探してない。
451 名前:nobodyさん mailto:sage [2013/11/14(木) 02:04:40.49 ID:???] ありゃ、それはダメだね
452 名前:nobodyさん mailto:sage [2013/11/14(木) 02:53:48.18 ID:???] bootstrapはセマンティックじゃないから 使う気がしねぇ。 CSSの文化に逆行してる。
453 名前:nobodyさん mailto:sage [2013/11/14(木) 04:30:33.71 ID:???] cakephp初心者なんですけど、phpの関数ってcakeでも使えますか? 前のページのURLを取得したいんですけど …
454 名前:nobodyさん mailto:sage [2013/11/14(木) 05:08:41.87 ID:???] ・・・流石に呆れて閉口だわ
455 名前:nobodyさん mailto:sage [2013/11/14(木) 05:10:58.85 ID:???] >>453 使えるよ
456 名前:nobodyさん mailto:sage [2013/11/14(木) 11:45:51.79 ID:???] >>452 そういうのをこだわる人は Bootstrapで使ってるLessを読み込んで セマンティックに使うことができますよ SASSとかでもできるな、変換されたのあるしね
457 名前:nobodyさん mailto:sage [2013/11/14(木) 12:14:49.49 ID:???] ロマンティック
458 名前:nobodyさん mailto:sage [2013/11/14(木) 14:08:00.47 ID:???] SASSって言っても、HTMLやCSSはセマンティックになるんだろ? bootstrap方式だと <div class="red line box"> みたいな感じだけど、セマンティックなら <div class="main-box"> みたいにするよな。
459 名前:nobodyさん mailto:sage [2013/11/14(木) 15:30:11.14 ID:???] >>458 使い方の問題。 ああいう系のCSSそのまま使ったら どういう作り方、使い方してもセマンティックにならない
460 名前:nobodyさん mailto:sage [2013/11/14(木) 15:32:38.35 ID:???] semantic-ui.com/ どう思う?
461 名前:nobodyさん mailto:sage [2013/11/14(木) 15:50:12.29 ID:???] >>460 <main class="ui three column grid"> こういうのがもう嫌気さすわ。CSSの意味があるのかと
462 名前:nobodyさん mailto:sage [2013/11/14(木) 15:56:57.10 ID:???] >>458 echo '.main-box { .box; .line; .red; }' > less/my-components.less echo '@import "my-components.less";' >> less/bootstrap.less grunt BootstrapもLESSも使ってないからよく分からんがこれでいいだろ 要らんクラスが出来てもいいならだが
463 名前:nobodyさん mailto:sage [2013/11/14(木) 16:15:36.03 ID:???] >>458 の1行目が理解できないのだが
464 名前:nobodyさん mailto:sage [2013/11/14(木) 17:05:51.55 ID:???] Bootstrapのスレ荒らしてた奴と セマンティックって騒いでる奴が同じ奴に思える
465 名前:nobodyさん [2013/11/14(木) 17:18:19.93 ID:UudgqYGt] 初心者なのですが、ログインしたユーザーが登録情報を更新できるようにしたいのですが、users/editにアクセスしたときにログインユーザー以外は弾きたいです。Controllerは public function edit($id = null) { $this->User->id = $id; if (!$this->Auth->user('id') == '$id') { throw new NotFoundException(__('ユーザー違います')); } } URLを他のログインしていないユーザーに変えるとそのまま表示されてしまいます。 どうすればログインユーザー自身の情報のみを表示できるのでしょうか?
466 名前:nobodyさん mailto:sage [2013/11/14(木) 17:37:41.41 ID:???] >>465 cookbookでAuthの説明読めよ $this->Auth->deny('edit'); を書いて、認証が必要なページを指定すればいいだろ
467 名前:nobodyさん mailto:sage [2013/11/14(木) 23:18:44.29 ID:???] >>464 俺にはお前が、そのBootsrapのスレで こてんぱんにやられた奴に見えるよw
468 名前:nobodyさん mailto:sage [2013/11/14(木) 23:28:19.13 ID:???] >>467 負けてたのおまえのほうじゃん
469 名前:nobodyさん mailto:sage [2013/11/15(金) 00:30:04.73 ID:???] >>468 いや、俺はそのスレなんか知らんよ。 俺はそのスレを見たことないが、 お前がそのスレにいたことは、お前の発言から確かだろう? そしてその出来事を今も忘れなれない。 思い出してしまう。君、病気だよ。
470 名前:nobodyさん mailto:sage [2013/11/15(金) 00:33:55.48 ID:???] そもそも「負けてた」ってのから、何と戦ってるんだって話だがw
471 名前:nobodyさん mailto:sage [2013/11/15(金) 00:44:32.60 ID:???] 俺ROMってたけど SASSとBootstrapという 場違いの喧嘩を売ってた奴がいたって感じだったな
472 名前:nobodyさん mailto:sage [2013/11/15(金) 01:33:42.42 ID:???] まぁそんなにセマンティックとかに明るくない俺でも、 Bootstrapは使ってみると、騒がれてるほど洗練されてないなとは思った。 でも楽なんだよねぇ。 とりあえずclass="well"って書けば、無難な枠ができるし。 wellの中にちょっとした欄外のボックスが欲しくなって、 あと2個くらい枠の種類があればなとか思い始めてしまう。
473 名前:nobodyさん mailto:sage [2013/11/15(金) 04:03:21.24 ID:???] ただ問題は、HTMLが醜くなるのと メンテナンス性が下がるっってところだよな。 いざデザインを変えようと思うと、 CSS的には、CSSファイルを弄るだけのはずのことなのに、 Bootstrapを使うと全HTMLファイルにわたって 参照箇所を探して個別に修正しないといけない。 これもう普通のCSSの使い方じゃないよ。
474 名前:nobodyさん mailto:sage [2013/11/15(金) 11:12:17.32 ID:???] Bootstrapとかああいう系がセマンティックなはずがない
475 名前:nobodyさん mailto:sage [2013/11/15(金) 14:16:20.80 ID:???] >>473 俺もそう思う。やたらOOCSSなんて言われてるから CSSもオブジェクト指向型に変えないといけないのかと悩んでいるが、 HTMLやCSS両方変更しなきゃいけないってのに違和感あるわ
476 名前:nobodyさん mailto:sage [2013/11/15(金) 14:27:36.43 ID:???] >>475 Bootstrapをただ使うだけだとOOCSSとは言わんと思うよ。 OOCSSはSASSとかLESSとかあそこらへんで組まないと。 そうするとHTML変更する必要はなくなる。
477 名前:nobodyさん mailto:sage [2013/11/15(金) 14:27:39.11 ID:???] OOCSSで一番悪なのはextendこれに気づかない奴が多い extendが入るとOOCSSではなくてOOSSになることに気づかない
478 名前:nobodyさん mailto:sage [2013/11/15(金) 14:36:44.68 ID:???] >>476 SASSとかLESSって結局は新たなCSSが作成されるわけだろ? PHPで言えば、includeした後のファイル(HTML)になるというか。 だから、HTML側は class="well"じゃなくて、class="weel-box"みたいに固有名になると思うんだが。 つまり、Bootstrapみたいな書き方にならないと思うんだが、間違ってる?
479 名前:nobodyさん mailto:sage [2013/11/15(金) 14:42:57.08 ID:???] >>478 あってるよ。 Bootstrapは今はやってるようなただ使うってこともできるけど、 LESSのライブラリとして利用することもできる。
480 名前:nobodyさん mailto:sage [2013/11/15(金) 15:25:51.04 ID:???] 余所のスレでセマンティックしてくれ
481 名前:nobodyさん mailto:sage [2013/11/15(金) 19:56:55.32 ID:???] ロマンティックは夜のデートで。
482 名前:nobodyさん mailto:sage [2013/11/15(金) 22:19:35.59 ID:???] OOCSSをちゃんとやるには、Sassが必須ということ。 Sassを使わないでOOCSSをやろうとするとはメンテナンス性が 悪いものになってしまう。 そもそもSassはオブジェクト指向を取り入れて作ったCSS言語で OOCSSで言ってることは、Sass利用者は普通にやっている。 で、Bootstrapの一般的なサンプルはSassを使わない OOCSSになってるからメンテナンス性が悪い。 何がダメかというとclassに割り当てたいスタイルを羅列するやり方。 正しいCSSをメンテナンス性を保ちながら書くにはSassが必須。 まとめると、SassがCSSを超えた言語。これが基本。 OOCSSは考え方であって実態はない。 BootstrapはただのCSSデザイン集。
483 名前:nobodyさん mailto:sage [2013/11/15(金) 22:24:05.29 ID:???] >>482 Sassはextendsがちまたで問題になってるし好きじゃない
484 名前:nobodyさん mailto:sage [2013/11/15(金) 22:26:24.01 ID:???] >>482 出たSass信者 盲目って怖いね
485 名前:nobodyさん mailto:sage [2013/11/15(金) 22:30:06.73 ID:???] >>483 extendsの問題って?Sassには@extendがあるが、 そのほかのextendsの話とごっちゃにしてるでしょ? それか古いSassでPlaceholderがなかった頃の話をしてるとかだろうね。 >>484 でたSassアンチ たいていこいつらは、 理由を何も言わないんだ。
486 名前:nobodyさん mailto:sage [2013/11/15(金) 22:33:30.11 ID:???] しばらくsassのサイト見てなかったけど、 電話のお姉さんどこいった?w
487 名前:nobodyさん mailto:sage [2013/11/15(金) 22:36:21.54 ID:???] 「ある人に魚を一匹与えれば、その人は一日食える。 魚の取り方を教えれば、その人は一生を通して食える。」 という言葉がある。 Bootstrapは誰かが作ったCSS。 Sassは自分でCSSを作るよりよい方法。
488 名前:nobodyさん mailto:sage [2013/11/15(金) 22:58:23.33 ID:???] >>485 Sassアンチなわけじゃないぞ SassだけがOOCSSの答えじゃないって意味だ 普段もJS縛りがなければ使ってるし extendが使えるって主張する人多いけど 書いてるコード量一緒、メンテナンス性一緒 吐かれるCSSが違うだけ デザイナと仕事するときはLessの方がまだ理解してくれる
489 名前:nobodyさん mailto:sage [2013/11/15(金) 23:03:55.67 ID:???] CSSの話しはスレ違いだからやめません?
490 名前:nobodyさん mailto:sage [2013/11/16(土) 00:37:07.43 ID:???] >>488 lessもextend実装されそうな流れみたいだけど? webtech-walker.com/archive/2012/10/less_extend_experimental.html extendを使ったほうが自然な場合に 使えばいいだけじゃん。 無理して他のを使う必要はない。 extendが問題になってるって話じゃなかったの? 「extendじゃなくても同じことが出来る」という話は exntedが問題になってる理由にはならないよ。
491 名前:nobodyさん mailto:sage [2013/11/16(土) 01:39:48.43 ID:???] >>489 この話やめると過疎るしいいんじゃね。 CakePHPの質問がきたら誰かしら答えてるし。
492 名前:nobodyさん mailto:sage [2013/11/16(土) 03:00:40.54 ID:???] この話にかぎらず、やめるとかやめないとか そういうのは勝手にやるから 仕切っても無駄だよ。
493 名前:484 mailto:sage [2013/11/16(土) 07:54:37.23 ID:???] >>490 他人の発言混ぜないで。 Lessにも実装か、PullRequestが結構昔に投げられてたもんね
494 名前:nobodyさん [2013/11/16(土) 22:07:19.93 ID:Rk/pBkL7] これまでcakePHPのシェル(Console)実行は、TeraTermでWEBサーバに接続してシェルを実行していたのですが これだと知識のある人しかできないので、 cakePHPの認証機構で構築されたシステムにログインし 【***処理実行】といったリンクがクリックされるとコマンドラインから実行するのと 同じ事をバックグラウンドでやりたいと考えています。 何か良い方法はありませんか?
495 名前:nobodyさん mailto:sage [2013/11/16(土) 22:23:02.69 ID:???] テーブルの中に入力項目があり 検索ボタンを押して検索が走る仕組みにしています。 <form name="name_search" action="/hoge/search" method="post"> <table> <!-- 入力項目〜略〜 --> </table> </form> <input type="button" value="検索する" name="" style=""> どうもPOSTが走ってる気がしないのですが、 コードに間違いは無いでしょうか?
496 名前:nobodyさん mailto:sage [2013/11/16(土) 23:20:57.91 ID:???] >>494 いい方法かどうかは知らんが、手っ取り早く、exec()とかsystem()すればいいんじゃないの? ただ、お勧めはしないけど。 シェルでどんなことをしようとしてるのか知らないけど、開発中に使うbakeとかそういうのなら、 知識を付けろって話し。 ってか、そもそも、管理画面からクリックで実行する機能なら、シェルじゃなくて普通に実装したらええやん。 管理画面から実行できる機能が、cronからも実行したいみたいな話なら、まぁありえるし分かるんだけど。 その場合、コントローラーからもシェルからも使える場所にロジックを書けばいい。 そんなに複雑じゃないならモデルにかけるだろうし、無理そうなら普通のクラスで作ってlibにおいて App::import()すればいいんじゃね。
497 名前:nobodyさん mailto:sage [2013/11/16(土) 23:23:16.88 ID:???] >>495 CakePHPの前にHTMLから勉強しろw inputがformの外にあるじゃねーか
498 名前:nobodyさん mailto:sage [2013/11/16(土) 23:29:51.46 ID:???] www
499 名前:nobodyさん mailto:sage [2013/11/16(土) 23:42:15.65 ID:???] >>494 現在teraterm でシェルを実行していたのなら バッチファイルをダブルクリックさせて、 内部でSSHを呼び出してリモートのコマンドを 実行すればいいだけじゃん?
500 名前:nobodyさん mailto:sage [2013/11/16(土) 23:43:19.37 ID:???] >>495 は優秀。 再現可能なコードをちゃんと書いて 質問している。
501 名前:495 mailto:sage [2013/11/17(日) 01:46:08.06 ID:???] >>497 formの中に入れてもう一度試してみます。 >>500 ありがとうございます。頑張ります。
502 名前:494 mailto:sage [2013/11/17(日) 10:01:58.45 ID:???] >>496 なぜシェルで作っているかというと cronで回しているからです。 しかし、基本的にはcronでシェルをキックしていますが 特定の条件の時にはユーザが手動でシェルを実行する必要があるのです。 かといって一般ユーザにシェルを実行させるとかも 危険なので、シェルを管理画面上からも実行させたいと思っています。 ※結構複雑な処理です。 >>499 そーいう手もありますね。。。 ですが管理画面上から一度に出来ないものかと。。。
503 名前:nobodyさん mailto:sage [2013/11/17(日) 15:42:23.43 ID:???] >>502 ん?だから > その場合、コントローラーからもシェルからも使える場所にロジックを書けばいい。 > そんなに複雑じゃないならモデルにかけるだろうし、無理そうなら普通のクラスで作ってlibにおいて > App::import()すればいいんじゃね。
504 名前:nobodyさん mailto:sage [2013/11/18(月) 12:55:59.49 ID:???] >>503 サンクス > その場合、コントローラーからもシェルからも使える場所にロジックを書けばいい。 試してみます。
505 名前:nobodyさん mailto:sage [2013/11/18(月) 15:30:58.69 ID:???] cakePHP2で検索を行うプログラムを書いています。 検索条件が複数項目あり、複数の組み合わせで指定可能な場合において ユーザが指定をした検索条件で、conditionに動的に検索条件をバインドする良い方法はありますか? 現在は、毎度ifで分岐してcondtionコードを書いており効率の悪さを痛感しています。 @ユーザIDだけ指定した場合 'user_id' => '333' AユーザID、年齢を指定した場合 'user_id' => '333', 'age' => '44' BユーザID、性別を指定した場合 'user_id' => '333', 'sex' => '0'
506 名前:nobodyさん mailto:sage [2013/11/18(月) 17:02:23.94 ID:???] >>505 サーチプラグイン使えばいいんじゃないの?
507 名前:nobodyさん mailto:sage [2013/11/18(月) 18:19:43.56 ID:???] >>505 Searchプラグイン使わないとか、罰ゲーム?
508 名前:nobodyさん mailto:sage [2013/11/18(月) 18:53:39.61 ID:???] >>506 >>507 cakePHPだけではそういった機能は無いのですね。 Searchプラグインとかちゃんと動作するかちょっと心配だったりします。
509 名前:508 mailto:sage [2013/11/18(月) 18:56:37.22 ID:???] サーバ変えた時とかめんどくさそうなので地道にif分岐 させてやる事にします。
510 名前:nobodyさん mailto:sage [2013/11/18(月) 19:01:09.34 ID:???] >>509 意味わからん
511 名前:nobodyさん mailto:sage [2013/11/18(月) 19:07:25.95 ID:???] >>509 の文章とか普通に分かり易いじゃん。 理解出来ない人って頭大丈夫かな。
512 名前:nobodyさん mailto:sage [2013/11/18(月) 19:14:07.40 ID:???] いや俺も意味わからんし
513 名前:nobodyさん mailto:sage [2013/11/18(月) 19:14:32.25 ID:???] >>511 サーバ変えたときに面倒になる実装ってどんなんだ?
514 名前:nobodyさん mailto:sage [2013/11/18(月) 19:16:28.18 ID:???] サーバー変えたら何が変わるんですかね…
515 名前:nobodyさん mailto:sage [2013/11/18(月) 19:20:29.41 ID:???] エスパーな511が何を分かったのか気になる
516 名前:nobodyさん mailto:sage [2013/11/18(月) 19:23:26.86 ID:???] >>513 サーバ変えたらまた search プラグインの設定せねばならん 面倒だーって事でしょ。 それくらい小学生でも分かると思うけど。
517 名前:nobodyさん mailto:sage [2013/11/18(月) 20:09:16.65 ID:???] >>516 お前だけ噛み合ってないぞw
518 名前:nobodyさん mailto:sage [2013/11/18(月) 22:03:29.92 ID:???] あえて苦しい道を行くか・・・
519 名前:nobodyさん [2013/11/18(月) 22:41:02.59 ID:HBQEtXMZ] サーバーごとに設定が必要な Search プラグインっていうのを教えて欲しい。 いや、やっぱりいいや。
520 名前:nobodyさん mailto:sage [2013/11/19(火) 00:24:04.47 ID:???] cakephpやってりゃサーチプラグインは必須レベルだと思うんだけど。
521 名前:nobodyさん mailto:sage [2013/11/19(火) 00:31:47.95 ID:???] >>520 が使ってるサーチプラグインてサーバーごとに設定が必要なの?
522 名前:nobodyさん mailto:sage [2013/11/19(火) 01:03:09.36 ID:???] >>521 必要じゃないね
523 名前:nobodyさん mailto:sage [2013/11/19(火) 05:39:12.52 ID:???] まあcakeやphpのバージョンがコロコロ変わってそのたびに使えなくなるんだろうなと思うと プラグインに頼りたくない気持ちはわかる
524 名前:nobodyさん mailto:sage [2013/11/19(火) 10:30:58.16 ID:???] まぁちゃんと調べて検証してから使ったほうがいいのは確か。 サーチはもう定番だと思うけど、同じCakeDCでもユーザープラグインはクソだし。
525 名前:nobodyさん mailto:sage [2013/11/19(火) 14:07:12.30 ID:???] サーチプラグインはルーティングしていると困るときあるからな 今までIFでやっているならIFで独自コンポーネントでも作ればいいじゃん
526 名前:nobodyさん mailto:sage [2013/11/20(水) 09:40:20.78 ID:???] findがネスト配列返してきて衝撃を受けたんだがパフォーマンスの問題なのか? PHPが配列処理に強いから特性を活かすとかそういう話か? なにも考えないで使うとコントローラーやヘルパーの肥満化を促進しそう
527 名前:nobodyさん mailto:sage [2013/11/20(水) 11:35:26.62 ID:???] >PHPが配列処理に強いから特性を活かすとかそういう話か? そうです >なにも考えないで使うとコントローラーやヘルパーの肥満化を促進しそう Hash クラスを使いましょう Hash のコード見ると、こんなことするぐらいなら オブジェクトで返しておけよ! と思うがなw
528 名前:nobodyさん mailto:sage [2013/11/20(水) 12:06:21.22 ID:???] CakePHP3まで耐えるんだ
529 名前:nobodyさん mailto:sage [2013/11/20(水) 12:14:01.60 ID:???] ただでさえPHPの配列遅いのに
530 名前:nobodyさん [2013/11/20(水) 19:29:25.32 ID:sxeXAx98] CakePHP:save()を使ってテーブルのレコードをupdateしようとしていたのですが そもそも、cakePHPの場合には、複数の主キーが設定されている場合には saveメソッドを使ってupdateは出来ないのでしょうか? id だけじゃなくて id と sequence_number の2つが hoge テーブルの主キーの場合とか って普通にSQL分を投げるしかないですか?
531 名前:nobodyさん mailto:sage [2013/11/20(水) 21:17:34.01 ID:???] >>530 複合キーは使えないよ 裏技的なプラグインか何かがあった気がするが、失念
532 名前:nobodyさん mailto:sage [2013/11/20(水) 21:19:13.23 ID:???] ×複合キー ○複合主キー
533 名前:nobodyさん mailto:sage [2013/11/22(金) 13:52:04.15 ID:???] 艦これのサーバサイドってCakeだったのね
534 名前:nobodyさん [2013/11/22(金) 14:47:24.43 ID:V2BhDK+1] >>531 そうなのね。諦めました。 地道にupdate分を投げます。
535 名前:nobodyさん mailto:sage [2013/11/22(金) 15:48:01.98 ID:???] CakePHPに限らず、大抵のフレームワーク、というかORマッパーは、 複合主キーはサポートしないか、してても無理やり感のあるものだよね。
536 名前:nobodyさん [2013/11/22(金) 15:57:57.23 ID:W1kV2v2N] なんで複合主キーはダメなのさ。
537 名前:nobodyさん mailto:sage [2013/11/22(金) 17:52:26.73 ID:???] >>536 嫌なら使うな、というと厳しいが、 fw使うってそんなものだと思う。
538 名前:nobodyさん mailto:sage [2013/11/22(金) 18:01:15.94 ID:???] >>533 ソースは?
539 名前:nobodyさん [2013/11/22(金) 18:26:27.31 ID:4CXM4jc6] cake初心者なんですけど、リダイレクトしたらっていう条件式って作れますか? すべてのページを指定するのは賢くないと思いまして…
540 名前:nobodyさん [2013/11/22(金) 18:40:09.88 ID:UUBP/xq0] >>537 じゃ、諦めるわ。
541 名前:nobodyさん mailto:sage [2013/11/22(金) 20:34:04.53 ID:???] 複合主キー対応してないのってRailsもどきで対応できてない奴だけじゃない?
542 名前:nobodyさん mailto:sage [2013/11/22(金) 21:35:11.99 ID:???] 複合主キーにする設計自体どうなのかと思わないでもない
543 名前:nobodyさん mailto:sage [2013/11/22(金) 21:44:16.48 ID:???] >>539 session 使うしか思いつかないが、 やってやれないことは無いと思う。
544 名前:nobodyさん mailto:sage [2013/11/22(金) 23:24:16.29 ID:???] 現在サクラインターネットを使っています。 そしてソースコード一式のバッグアップ処理にTeraTermマクロでログインし 手動で以下の様なコードを実行しています。 tar czvf file_1_2.tar.gz file_1 file_2 しかし、毎度手動でこのコマンドを実行するのは不便なので(かといってcronは使いたくない) TeraTermマクロから自動でログインと同時に、特定のコマンドを発行する方法とかってありませんか?
545 名前:nobodyさん mailto:sage [2013/11/22(金) 23:27:18.44 ID:???] Cake関係なさすぎワロタ
546 名前:nobodyさん mailto:sage [2013/11/23(土) 01:58:50.84 ID:???] >>544 マクロなんか使う必要ない。 SSHの引数にコマンド書けばいいだけ。 ログインのパスワードはカギを使えばいいだけ。
547 名前:nobodyさん mailto:sage [2013/11/23(土) 12:13:55.44 ID:???] >>546 詳しすぎわろた
548 名前:nobodyさん mailto:sage [2013/11/23(土) 12:27:27.10 ID:???] あー、そっか、ワンライナーで書けるんだ。
549 名前:nobodyさん mailto:sage [2013/11/26(火) 03:02:20.11 ID:???] 一からサイト作るの好きなんだけど、 作ったサイトを改造するのが苦手なんだよね。 やっぱりみんなもそんな感じ? 人の作ったコードを触るのが先って人もいるのかな。
550 名前:nobodyさん mailto:sage [2013/11/26(火) 03:29:46.00 ID:???] 好きってひとも
551 名前:nobodyさん [2013/11/26(火) 05:56:36.78 ID:2m7znfvZ] >>549 たぶん全員がそうだろ
552 名前:nobodyさん mailto:sage [2013/11/26(火) 08:59:27.15 ID:???] まずコードの意図を読むのに時間かかるからね 数カ月前の自分が書いたコードでもたまに分からないし テストが書いてあったらそれはとっても嬉しいなって
553 名前:nobodyさん mailto:sage [2013/11/26(火) 09:09:47.39 ID:???] 何らかの有名MVCフレームワークを利用したものなら MVCという大枠とそのFWの規約とドキュメントがあるだけマシ
554 名前:nobodyさん mailto:sage [2013/11/26(火) 09:26:27.15 ID:???] >>552 おれおれフレームワークなんて、わけがわからないよ。
555 名前:nobodyさん mailto:sage [2013/11/26(火) 11:33:42.73 ID:???] 俺はCake風(ただし1.3)のオレオレ作ってるから、割と理解できるな。 ただし、そこからカスタマイズ依頼とかされたら困るが。
556 名前:nobodyさん mailto:sage [2013/11/26(火) 12:09:28.97 ID:???] オレオレやってしまうと、せっかくのオープンソースの魅力が半減する。
557 名前:nobodyさん mailto:sage [2013/11/26(火) 17:50:46.60 ID:???] xampp Cakephpvar2.3.10 でSmartyの3.1.15導入してみた。 tplファイルがない場合に選択されるctpファイルでの表示がおかしい。 HtmlHelper関連だと思うのだけどどなたか解決方法教えてください
558 名前:nobodyさん mailto:sage [2013/11/26(火) 18:08:22.89 ID:???] >>553 wordpressのプラグインとか作ってても ドキュメントに無いソースの奥に眠る関数とか探して調べるのにすごい疲れたわ
559 名前:nobodyさん mailto:sage [2013/11/26(火) 20:04:02.44 ID:???] (WP早く滅びて)
560 名前:nobodyさん mailto:sage [2013/11/26(火) 20:20:25.47 ID:???] >>559 わかるわー。 WordPressが無ければどれほどプログラマーが稼げてたか。
561 名前:nobodyさん mailto:sage [2013/11/26(火) 20:29:19.30 ID:???] せめてまともなプログラマがWordPressを書いていれば… あんな意味不明なぐちゃぐちゃなコードどうやってメンテしてんだろう
562 名前:nobodyさん mailto:sage [2013/11/26(火) 21:37:55.32 ID:???] >>561 大成できないタイプだな
563 名前:nobodyさん mailto:sage [2013/11/26(火) 22:03:23.94 ID:???] WP使えばなんでも安く・早く・簡単に出来ると思い込む奴ってなんなの?
564 名前:nobodyさん mailto:sage [2013/11/26(火) 22:05:01.70 ID:???] プラグインの多さだけがとりえですしお寿司
565 名前:nobodyさん [2013/11/26(火) 22:30:57.24 ID:nldP7I2h] wordpress って最高だよね。 無料でここまで何でも出来るCMSとかこのスレの馬鹿グラマには出来ないでしょうね。
566 名前:nobodyさん mailto:sage [2013/11/26(火) 22:48:15.61 ID:???] お前らがWPに恨みたっぷりなのは分かった せめてCakePHPで作られたCMSの話を……
567 名前:nobodyさん mailto:sage [2013/11/26(火) 22:50:57.41 ID:???] >>557 Smartyを破棄する
568 名前:nobodyさん mailto:sage [2013/11/27(水) 00:18:20.01 ID:???] CakeでもWPでも仕事するしおすし。 CakePHPベースのCMSは、なんかなぁ、 どうせCakeなら自分で好きなようにしたくなっちゃう感じする。
569 名前:nobodyさん [2013/11/27(水) 00:25:51.15 ID:Rk4EDw/d] wordpress って素敵だなぁー
570 名前:nobodyさん mailto:sage [2013/11/27(水) 01:30:39.60 ID:???] >>569 ユーザーから見える所はな
571 名前:nobodyさん mailto:sage [2013/11/27(水) 01:57:50.96 ID:???] ユーザー数が多いからWordPressには安心感があるよ。 どんなにドツボにはまってても、 あぁ、この泥沼に世界中の見知ら人が 何万と埋もれてるんだろうなという 温もりがWordPressにはある。
572 名前:nobodyさん [2013/11/27(水) 03:22:25.52 ID:mdMZh+Ob] 最強に糞だったCMS Moval Type
573 名前:nobodyさん mailto:sage [2013/11/27(水) 06:23:21.20 ID:???] >>572 スペリング違うけど、クソなのは同意。2.xに初めて触ったときは感動したけど、4.xで卒業したよ。最近のは知らない
574 名前:nobodyさん mailto:sage [2013/11/27(水) 22:12:09.37 ID:???] だからさぁ cakeもプラグインをもっとメジャーにしようよ wordpress派も流れて来るから
575 名前:nobodyさん mailto:sage [2013/11/28(木) 01:28:07.13 ID:???] こないこない wordpressはphpなんて知らない人用のもの
576 名前:nobodyさん mailto:sage [2013/11/28(木) 06:31:59.63 ID:???] 新人研修で、汚いプログラムの例としてWordPressのソース見せてる
577 名前:nobodyさん mailto:sage [2013/11/28(木) 10:50:04.35 ID:???] うちの研修では、 商業的な成功には理念的な完成度は不要である例として WordPressを引き合いに出してる。
578 名前:nobodyさん mailto:sage [2013/11/28(木) 11:11:40.35 ID:???] WordPressって商業的に成功してんの? 無料配布でしょ?
579 名前:nobodyさん mailto:sage [2013/11/28(木) 11:35:10.00 ID:???] allthingsd.com/20120425/automattic-grows-up-the-company-behind-wordpress-com-shares-revenue-numbers-and-hires-execs/ >>578 かなり儲かってるよ
580 名前:nobodyさん mailto:sage [2013/11/28(木) 11:36:57.69 ID:???] www.crunchbase.com/person/matt-mullenweg
581 名前:nobodyさん mailto:sage [2013/11/29(金) 02:16:14.63 ID:???] Fat Controllerはもちろんだめ。 Fat Modelになりすぎてもだめ。 むずかしいよ、最初からそんな見通せないから、ついモデルに書いて太らせてしまって、 行数増えすぎてからうあーってなるよ。 ComponentとBehaviorも、気軽に作ってると数ばっか増えて、煩雑になってくる。 特にComponentが、コントローラーにもモデルにもアクセスできちゃうから、 つい責任持たせすぎになっちゃうよ。
582 名前:nobodyさん mailto:sage [2013/11/29(金) 06:26:18.01 ID:???] >>581 うあーってなるん?
583 名前:nobodyさん mailto:sage [2013/12/01(日) 15:08:36.60 ID:???] 会社のサイトに簡単なメールフォーム付けようと 久々に素のPHP書いたら、メチャクチャに面倒臭く感じた でもそれだけにCakeとか使うのもなあ…。
584 名前:nobodyさん mailto:sage [2013/12/01(日) 16:08:25.46 ID:???] >>583 ちょっと大きめのライブラリを導入した、ぐらいに思っておけば幸せかもよ
585 名前:nobodyさん mailto:sage [2013/12/01(日) 18:00:34.36 ID:???] >>583 それ単に、メールの仕様が複雑なだけだから。
586 名前:nobodyさん mailto:sage [2013/12/01(日) 21:20:50.87 ID:???] メールフォーム作るなら既存の小さいライブラリ使いたいな メール用にはSwiftMailer選ぶんだけどバリデーションの部分はたまに悩む Symfony2みたいなコンポーネントごとの独立性の高いFW知ってるなら 一部のコンポーネントだけ使えばいいらしいが
587 名前:nobodyさん mailto:sage [2013/12/01(日) 21:35:29.81 ID:???] Cakeでも頑張ればいけるんじゃね メール:CakeEmail バリデーション:Model/Validator フォーム:Formヘルパー いや面倒だな`,、('∀`) '`,、
588 名前:nobodyさん mailto:sage [2013/12/01(日) 21:58:22.92 ID:???] cake関係ないかもしれんけど、フルスクラッチっていうの?サイトのシステムを全部作り直すのってどれくらい経過してからやればいい? cakephp1のシステムを1年前に作ったんだが2で作り変えるか。。。迷い中。 ヤフーとかグリーとかミクシーみたいなでかい企業はどれくらいの頻度でやってるんだろ?
589 名前:nobodyさん mailto:sage [2013/12/01(日) 22:06:14.84 ID:???] >>588 そういう企業は複数のシステムを持ってるものだから、一気に全部を作り直したりはしない 少しずつ手を付けていく
590 名前:nobodyさん mailto:sage [2013/12/02(月) 00:36:17.56 ID:???] お問い合わせフォームのように、一部だけCakeで作ろうとしても 大体は「全体のデザインの中にフォームがある」ってスタイルになるから、 レイアウトやテンプレートをCakeで作らなければいけない。 そうなると、元々ある静的な部分を更新したら当然Cake側も更新しないと 整合性が取れないわけで、手間やコストが2倍に膨らんでしまう。 結局、Cakeやフレームワークを使うなら、全てそれで管理しないといけなくなる。
591 名前:nobodyさん mailto:sage [2013/12/02(月) 09:12:38.83 ID:???] Cake関係ない話だけど ちょこっと導入できるような小さなメールフォームのライブラリが、案外ぐぐっただけじゃ見つからなくて これ以上探す時間が勿体無いから自分で書こうと思った CAPTCHAのライブラリはすぐ見つかったので、それはさくっと採用したけど とにかくさっさと動くようにして終わらせたくて、テストも書かずに作ったので ブラウザでいちいち動作確認して、面倒臭かった
592 名前:nobodyさん mailto:sage [2013/12/02(月) 09:38:56.13 ID:???] >>587 CakePHPの一部をコンポーネント/ライブラリとして他所で使う例を調べようと思ったが CakeのControllerのComponentの話とCakeにサードパーティのライブラリを導入する話しか出てこない
593 名前:nobodyさん mailto:sage [2013/12/02(月) 18:03:31.67 ID:???] 上でメールフォームの話題が出てるから試してみたんだけど、 /public_html └contact.php /cakephp └/app └/webroot こういう構成だったとして、contact.phpにアクセスしたら ContactControllerのindexを実行したいと思い、 #contact.php $_GET['url'] = '/contact/'; require '../cakephp/app/webroot/index.php'; #webroot内の.htaccessのindex.php箇所 RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] こんな風にしてexample.com/contact.php にアクセスしたんだけど、 「Contact.phpController could not be found.」ってエラーが出た。 やっぱ、public_htmlをアプリケーション化しないと無理なのかな?
594 名前:nobodyさん mailto:sage [2013/12/03(火) 00:14:57.84 ID:???] 突っ込みどころ満載すぎてどこから書けばいいのか
595 名前:nobodyさん mailto:sage [2013/12/03(火) 08:50:43.83 ID:???] >>594 一個ずつ突っ込んでくれ
596 名前:nobodyさん mailto:sage [2013/12/03(火) 09:30:31.38 ID:???] >>595 漫才みたいになるけどいい?
597 名前:nobodyさん mailto:sage [2013/12/03(火) 13:43:20.44 ID:???] OK
598 名前:nobodyさん mailto:sage [2013/12/03(火) 14:19:05.43 ID:???] まず、ファイルとかパスの名前を正しく書け。 全部小文字なわけがない。
599 名前:nobodyさん mailto:sage [2013/12/03(火) 16:50:09.45 ID:???] >>598 え??
600 名前:nobodyさん mailto:sage [2013/12/03(火) 18:25:14.17 ID:???] はい、ネタ続けて!
601 名前:nobodyさん mailto:sage [2013/12/04(水) 09:36:02.64 ID:???] メールフォームだけ作るのって、逆に面倒でもはや他の人に投げたいレベル。 なんか公開されてるのでやろうと思っても、なんか古いCGIを思い出させるのしかないんだよねぇ。 ちょっとバリデーションのところをカスタマイズしたいなと思っても、手を入れにくいし・・・
602 名前:nobodyさん mailto:sage [2013/12/04(水) 09:51:23.15 ID:???] PHPはいつまでも古い情報が検索の上位に出てくる たとえ情報が間違っていて時代遅れでも検索上位にあるから初心者に利用されやすい どんどん変なやり方や糞なプログラムが広がる負の連鎖を断ち切れなくなっている The Right Wayみたいなベストプラクティスをまとめたサイトが現れるってことは英語圏でも事情は同じってことだな
603 名前:nobodyさん mailto:sage [2013/12/04(水) 09:55:24.07 ID:???] PHPを書いている人はあまり小さいライブラリを活用しない印象があるなあ 素のPHPかフルスタックフレームワークか完成品かという感じ
604 名前:nobodyさん mailto:sage [2013/12/04(水) 09:57:37.43 ID:???] どうでもいい雑談になっちゃうけど htmlspecialchars_decode ってすごい関数名だよなあ じわじわ笑いがこみ上げてきた、どうしてこうなったんだろ
605 名前:nobodyさん mailto:sage [2013/12/04(水) 10:09:33.35 ID:???] >>603 メールフォーム程度だと悩む まともにテストしてあるライブラリを探す手間を惜しんで 自分で全部書いてPHPの謎関数名や謎仕様を再び実感する羽目になる
606 名前:nobodyさん mailto:sage [2013/12/04(水) 10:49:10.54 ID:???] だいたいメールフォームってPHPを勉強しだした頃に作るからな。 当然、その頃と今ではだいぶ書き方も変わってるわけで、 「昔自分が作ったプログラム」を使いたくないから、1から書きたくなる。
607 名前:nobodyさん mailto:sage [2013/12/04(水) 23:45:10.66 ID:???] >>604 もともとオブジェクト指向ではなくて 名前空間がなかったから。 名前が被らないようにしようと思えば どうしても名前は長くなる。
608 名前:nobodyさん mailto:sage [2013/12/04(水) 23:46:52.74 ID:???] >>605 メール受信じゃなくて送信だろ? HTMLメールや添付ファイル付きメールを 送ろうとでも思ってるの? メールフォーム程度なら 文字をエンコードする程度で終わりだろ?
609 名前:nobodyさん mailto:sage [2013/12/05(木) 00:13:14.38 ID:???] >>608 画像認証
610 名前:nobodyさん mailto:sage [2013/12/05(木) 00:24:35.97 ID:???] 真面目にやるなら外部からの入力は徹底的にチェックするのが基本だよな GETほど手軽じゃないにせよPOSTのパラメータだってCookieだってリクエストヘッダだって好きにいじれるんだから 自分が書いたHTMLのフォームで設定した以外の値が送られてくる可能性は大いにある それに一口にメールフォームと言っても入力が名前とコメントだけのものから企業のアンケートフォームまで色々ある 電話番号・郵便番号・メールアドレス・整数……よくある項目に対して毎回1から入力チェックを書く気はしないな CSRF対策や二重送信防止・画像認証も1から書くのは時間の無駄だし 確かにCakeを持ち出すのは大げさかもしれんが馬鹿が素で書くよりマシじゃね
611 名前:nobodyさん mailto:sage [2013/12/05(木) 00:41:23.84 ID:???] 今どきメールフォームを1から書いて割に合うの? Webサイト全体をCMSやFWで構築するって話だとフォームは標準装備って感じじゃない? 昔みたいにメールフォーム設置3万円〜とかまかり通らないでしょ? おしえてぷろのひと
612 名前:nobodyさん mailto:sage [2013/12/05(木) 09:41:31.15 ID:???] cake2系に対応したbaserCMS3がついにリリースされたそうな ttp://basercms.net/news/archives/218
613 名前:nobodyさん mailto:sage [2013/12/05(木) 10:21:18.03 ID:???] で、Cake3のリリースが迫っていると・・・
614 名前:nobodyさん mailto:sage [2013/12/05(木) 10:27:58.21 ID:???] こないだやっと苦労してCake2にしたばかりなのに、もう3へ以降なんてやらんぞ
615 名前:nobodyさん mailto:sage [2013/12/05(木) 10:38:50.61 ID:???] >>614 basercmsってcakephpプログラマーからして使いやすいん? 使ったこと一度もないわ。
616 名前:nobodyさん mailto:sage [2013/12/05(木) 10:45:00.73 ID:???] CMSって言っても特別な機能が入ってるわけじゃないし、 cakeに慣れてる人はcake使うからなw
617 名前:nobodyさん mailto:sage [2013/12/05(木) 12:08:21.04 ID:???] ようやくCakePHP2になったとはいえ、基本的に古いCakeになるから、 Cakeベースってとこも、最新のが使えないという不便さはあるしなー
618 名前:nobodyさん mailto:sage [2013/12/05(木) 12:23:17.69 ID:???] 今、静的ページと動的(Cakeベース)ページの共存作業をしてるんだが、 レイアウト使わないほうがいいな。 ヘッダー、フッター、サイドバーなんかはelementでまとめて ピュアPHPのようにHTML上にコード埋め込む形の方が、 デザイナーとの共同作業時に捗るわ
619 名前:nobodyさん mailto:sage [2013/12/05(木) 13:37:55.86 ID:???] baserCMSは触ってみたけどCakeなだけあってWPよりは断然構造把握しやすかった カスタムできるお問い合わせフォームがついてるのは嬉しい ただプラグインもテーマもまだまだ少なすぎる デフォの機能で間に合うサイトなら使えなくもないかな―
620 名前:nobodyさん mailto:sage [2013/12/06(金) 02:33:30.99 ID:???] >>618 それで捗る理由がわからん
621 名前:nobodyさん mailto:sage [2013/12/06(金) 09:58:37.69 ID:???] >>620 レイアウトだとCakeの言語要素が強いから理解するまで難しいけど、、 elementだけなら、includeとかDreaweaverの挿入感覚で使用できるから、 Webデザイナーは一部の修正だけで済み、言語知識を必要としない。 故にWebデザイナーへの説明や、ビューの修正を依頼するときにわかりやすく、 自分の仕事(プログラミング)に専念できるから捗る。 ここまで書く必要ありましたかね・・・
622 名前:nobodyさん mailto:sage [2013/12/06(金) 10:13:37.67 ID:???] >>621 わかりやすくて良い!
623 名前:nobodyさん mailto:sage [2013/12/06(金) 11:24:56.76 ID:???] バーチャルホスト設定しているCentOSのサーバでCakePHPの勉強をしたいのですが、 /home/hoge/public_html /home/fuga/public_html こんな2つのディレクトリがあった場合、各public_html直下に Cake本体のディレクトリを配置する感じになるんでしょうか?
624 名前:nobodyさん mailto:sage [2013/12/06(金) 12:02:18.41 ID:???] >>621 レイアウトもエレメントも同じ仕組みで出来てるし、 その説明読んでも、あえて避ける必要性を感じないなぁ。 自分のアプリの見直してみても、 レイアウトもエレメントもビューも、全部HTMLに多少のifやforeachやヘルパーが入ってるだけで、 レイアウトだけなにか難しいってのは無いように見える。 てか良く考えたら、デザイン側の人にわかんねぇよって言われたこと無かった。
625 名前:nobodyさん mailto:sage [2013/12/06(金) 12:27:57.95 ID:???] >>623 慣れるまで最初はそれでもいいかもしれんけど 複数のアプリを作ったりしたくて、サーバ丸ごと触れる環境なら cakephp本体は/usr/local/libとかどこかに1つ置いて ユーザーディレクトリの中にappの中身を置くようにするのがいいと思う book.cakephp.org/2.0/en/installation/advanced-installation.html#sharing-cakephp-libraries-with-multiple-applications
626 名前:nobodyさん mailto:sage [2013/12/06(金) 13:57:26.35 ID:???] >>625 レスありがとうございます。 こういう方法があるんですね。 試してみますー
627 名前:nobodyさん mailto:sage [2013/12/06(金) 19:30:44.10 ID:???] >>624 「METAタグ挿入したいんだけどどうしたらいい?」 「CSSやJavascriptは?インラインで書きたい時もあるんだけど」 「titleタグもページごとに変更したいんだよね」 「そうそう、パンくずリストはどうするの?」 え〜まだまだ続ける?これら全てCakeの機能で実現できるけど、 Cakeを知らない人は出来ないよね。その前にPHPか。 デザインもプログラムも出来る人なら問題ないかもね。
628 名前:nobodyさん mailto:sage [2013/12/06(金) 19:57:56.87 ID:???] デザイナにプログラム知識を要求するのは、プログラマの怠慢だと思うな。
629 名前:nobodyさん mailto:sage [2013/12/06(金) 23:30:47.19 ID:???] プログラムを使ってでしか出来ないものを やろうとするのが根本的な問題。 だから「お前には無理」で終わればいい。
630 名前:nobodyさん mailto:sage [2013/12/07(土) 02:09:10.25 ID:???] >>628 プログラマーってのは、デザイナーのために仕事してんじゃねーんだよ。
631 名前:nobodyさん mailto:sage [2013/12/07(土) 03:04:09.81 ID:???] >>630 それ、逆も言えるよね
632 名前:nobodyさん mailto:sage [2013/12/07(土) 03:05:33.58 ID:???] 仲良くしよう。 できるプログラマーは、デザイナーの事を考えて作る。 できるデザイナーは、プログラマーの事を考えてデザインする。 そう思うんだよね。
633 名前:nobodyさん mailto:sage [2013/12/07(土) 03:16:42.52 ID:???] どちらも、ユーザーや客やクライアントのことを考えて仕事するべきだろ。 で、自分の領域の仕事をこなす上で必要な知識は身に付けていかないとダメだと思うんよ。
634 名前:nobodyさん mailto:sage [2013/12/07(土) 03:21:24.80 ID:???] 2ちゃんでは正論は伸びない
635 名前:nobodyさん mailto:sage [2013/12/07(土) 07:23:32.80 ID:???] 何の話かよくわからんが かわいいデザイナーの娘と仕事がしたい
636 名前:nobodyさん mailto:sage [2013/12/07(土) 10:04:31.60 ID:???] 2.3なんだけど、shellのコマンドを実行すると、modelが見つからないとエラーが出ます。 これがいつもじゃなくて、時々起こります。 なんでだろ〜?
637 名前:nobodyさん mailto:sage [2013/12/07(土) 10:09:45.65 ID:???] CakePHPのビューで読み込むJavaScriptのテストがしたい ビューのテストはどうやればいいの?調べてもヘルパーのテスト方法しか出て来ない
638 名前:nobodyさん mailto:sage [2013/12/07(土) 10:30:48.05 ID:???] >>635 まったくだな
639 名前:nobodyさん mailto:sage [2013/12/07(土) 12:21:40.57 ID:???] なんかデザイナとプログラマを同列に考えてる人多いけど、デザイナのほうが上位だからな。 デザイナー様に無理難題ふっかけるなよ。
640 名前:nobodyさん mailto:sage [2013/12/07(土) 12:30:01.21 ID:???] >>627 Cakeってそんなに使えないレイアウトのViewしかないんだっけ?
641 名前:nobodyさん mailto:sage [2013/12/07(土) 14:55:19.27 ID:???] >>635 かわいいけど、HTMLとCSSもおぼつかないイラレ使いのデザイナーとなら、仕事したことある。
642 名前:nobodyさん mailto:sage [2013/12/07(土) 14:58:21.59 ID:???] >>637 JavaScriptはJavaScriptとしてテストしたらええやん。 画面としてテストしたいならせれにうむを使うやん。
643 名前:nobodyさん mailto:sage [2013/12/07(土) 15:06:54.00 ID:???] >>642 別にそれでもいいんだけど、テスト用のHTMLやJSはCake内のどこに置くのが定番なん?
644 名前:nobodyさん mailto:sage [2013/12/07(土) 16:41:30.86 ID:???] >>640 使える・使えないの問題じゃなくて、 Cakeの仕様をデザイナーにも覚えさせるのか? ってことだと思うが。
645 名前:nobodyさん mailto:sage [2013/12/08(日) 01:28:28.09 ID:???] 【質問】 PHPUnitでHttpヘッダーのステータスコードをチェックするテストコードを書きたいが、 わからない。 【調べたこと】 公式で$this->headersにデータが入っているようなことが書いてあるが、取得できない。 ・テストコード $this->testAction( '/hoge.json', $request ); // 内部でステータスコードを変更するコードを出力 $this->headers // array() が出力される ・エラーコード発生場所(HogeController.php) $this->response->type( 'json' ); $this->response->statusCode( 400 ); $this->response->body( json_encode( $body ) ); $this->response->send(); $this->_stop(); 【前提】 RESTfulなコードを書いている。エラーはステータスコードを4XXや5XXなどとして、 コーディングしたい。 【環境】 CakePHP2.3
646 名前:nobodyさん mailto:sage [2013/12/08(日) 17:12:58.59 ID:???] HTTPレスポンスヘッダを持ってるのはCakeResponseな $this->response->header(); //全取得 $this->response->header('Server'); //Serverの値取得 $this->response->header('Server', 'foo server'); //Server: foo serverをセット
647 名前:nobodyさん mailto:sage [2013/12/08(日) 17:17:32.39 ID:???] $thisの意味わかってんのか心配になるな・・・いやまさか
648 名前:645 mailto:sage [2013/12/08(日) 20:13:36.09 ID:???] レスありがとうございます。 >>646 CakeResponseの値を確認する場合は、 テストコード上ではHogeControllerのインスタンスはどのように持たせればよいでしょうか? $this->testAction( '/hoge.json', $request ); $this->Hoge->response->header(); ModelでのテストではClassRegistry等を使ってsetupで テスト側にインスタンスの持たせるかと思いますが、 Controllerのテストではどのようにインスタンスを持たせるのでしょうか?
649 名前:nobodyさん mailto:sage [2013/12/08(日) 20:20:56.25 ID:???] >>648 ID出せよ
650 名前:nobodyさん mailto:sage [2013/12/08(日) 22:01:22.39 ID:???] テストってのはさ、どんなものでもテストしてやるぞ!って 意気込みで望むものではなくてさ、 テストがしにくいものを無くすぞって考えてやるべき。 テストしにくい所のコードをついばんでいって、 テストしやすい形に抜き取っていって、 最終的にどうしてもテストしにくい部分だけ最小限にして残す。 テストしにくいと思ったら、そのままのコードで残したらダメだよ。 そのままのコードでテストするなんて愚の骨頂。
651 名前:nobodyさん mailto:sage [2013/12/08(日) 22:31:39.34 ID:???] >>650 いい事言ってだんろうけど、わかりにくい。わかりやすくお願いします!
652 名前:nobodyさん mailto:sage [2013/12/08(日) 22:32:26.91 ID:???] あーわかった。 ようは、テストもできねーようなコード書くなということか。
653 名前:nobodyさん mailto:sage [2013/12/08(日) 22:43:19.55 ID:???] テストできるぐらいの役割に分割しないとね
654 名前:nobodyさん mailto:sage [2013/12/08(日) 23:02:00.09 ID:???] テストがしにくいコードってのはあるし、 テストをする意味が無いコードもあるんだよ。 一連の処理の中から冗長なコードを取り除いていくと 最終的にはコードというより定義に近くなる。 PHPのスレだからまあ、WordPressのは例を出すと、 wp_config.php これは一応PHPのコードだろ? だけどこれをテストする意味が俺にはわからない。 設定ファイルでもない限りここまで定義のみに できることはないけどそれでもテストする意味あるのか?って 思えるほど減らすことは出来るよ。 テストは後付で加えるものじゃない。 テストが出来るようにコードを書いていくんだ。 テストがしにくいと感じたら、テストを書く技術を磨く前に テストがしやすいコードを書く開発技術を身につけるんだ。
655 名前:nobodyさん mailto:sage [2013/12/08(日) 23:13:20.11 ID:???] >>645 なんてそういうことだよ。 > 【質問】 > PHPUnitでHttpヘッダーのステータスコードをチェックするテストコードを書きたいが、 > わからない。 > $this->response->statusCode( 400 ); って書けば、当然HTTPヘッダのステータスコードは400だろ? 「400という数値を与えれば、それがHTTPヘッダーになる」というテストは必要だよ? でもそれはCakePHPが開発元がやってるテスト。 400を与えれば当然HTTPステータスは400だし、404って書いていれば当然404だろ? これ、ただの定義じゃないか。そんなのテストする意味が無い。 ではなくて、本当にテストするべきなのは400になる原因の方だよ。 なんかのデータを引数にしてなんかの処理をやったらエラーになるんだろ? それをテストするべき。 そのエラーを最終的に400としてクライアントに伝えるというのはただの定義でしかない。
656 名前:645 mailto:sage [2013/12/08(日) 23:53:33.88 ID:???] >>655 (釈迦に説法ではありますが)RESTfulな設計思想で、エラーを発生させた場合にはエラーメッセージと共に 200以外のHttpステタースコードを投げるのは、異論はないと思います。 論点としては、「RESTful」な設計だとしても エラーを発生させるような処理を確認するテストの場合に、 エラー発生を「HTTP status code等」でテスト結果を確認すべきか否か? というところを言いたいのだと思いますが、、、、ここは議論の余地があるかと思います。 > そのエラーを最終的に400としてクライアントに伝えるというのはただの定義でしかない。 現状、クライアント側の実装でも、 「ステータスコードを見て処理を振り分ける」処理があるため、 テストをやっておいた方がいいのではないかと思った次第です。 >>648 についてですが、 testActionなどの後では、$this->controller でインスタンスに 触れるようですが、、、 responseの内容は相変わらず取得できません。
657 名前:nobodyさん mailto:sage [2013/12/09(月) 00:29:29.65 ID:???] >>656 やらないよりはやったほうがいいけど、意味が少ないというだけ。 そして、費用対効果まで考えるとそこまでやる意味ないんじゃないってこと。 なぜなら400を返すまでのコードが正しければ絶対400返るでしょ?一回確認すれば十分じゃない? その400を返すコードは400を返すという仕様そのものが変わらない限りもう変えることはないでしょ? それよりも複雑なのは400を返すまでの仮定であってその仮定が正しければ400返すでしょ? そういう難しくもなく安定したコードのために、どうやってテストをすればー なんて言うのなら、やっても時間がかかるだけで効果が無いと思うよ。 > 現状、クライアント側の実装でも、 > 「ステータスコードを見て処理を振り分ける」処理があるため、 もしかしてサーバーとクライアント一緒にしてテストしてない? サーバー側の実装がどうであれ、400が返って来た場合のテストをすればいい。 だから400を返すだけのアプリ(モック)を使えばいい。 もっと言えば、クライアントだけで400が返って来たかのようにエミュレートさせれば クライアントだけでテストできる。 どんなものでもテストしてやるぞ。ではなくアプリに手を加えてテストが簡単にできる ようにするというのはこういう話。
658 名前:645 mailto:sage [2013/12/09(月) 01:07:18.47 ID:???] >>657 引き続き、お付き合いいただきありがとうございます。 全体的なテストの思想、手法のお話しについては概ね同意いたします。 (クライアント側はSinon等を使っており、おっしゃるようなテストを書いております) ご教示いただいている、お話しについては 「○○のようなテストはやるべきか、やらないべきか?」という形に収束しつつありますので、 スレに添う、単純なCakePHPの 「○○の実装の方法は?」というような部分について引き続き、お知恵をお借りできれば幸いです。
659 名前:nobodyさん mailto:sage [2013/12/09(月) 01:10:16.11 ID:???] >>658 無駄な努力を頑張れやw
660 名前:nobodyさん mailto:sage [2013/12/09(月) 01:43:48.55 ID:???] api.cakephp.org/2.3/source-class-ControllerTestCase.html#195-287 わざわざ$this->headersに入れてるし、普通ならちゃんと入ってるものっぽい気がする。 でも入ってないって言うなら、testAction()からvar_dump()仕込んでって追いかけるしかないんじゃね?
661 名前:645 mailto:sage [2013/12/09(月) 01:53:31.21 ID:???] 自己解決しました。 ありがとうございました。 先の例では、 $this->testActionのあとに $this->assertEqual( 400, $this->controller->response->statusCode() ); $this->assertEqual( "something", $this->controller->response->body() ); $this->assertEqual( "json" $this->controller->response->type() ); のような形で対応できました。 お騒がせしてすみません。
662 名前:645 mailto:sage [2013/12/09(月) 01:55:29.19 ID:???] >>660 こちらの例では。 $this->headersはarray()になっており、 $this->controller->header() はNULLになっていました。
663 名前:nobodyさん mailto:sage [2013/12/09(月) 11:11:00.28 ID:???] >>662 $this->controller->header() なんてのCakePHPに無いぞ? そのリンク先にもそんなコードはないし、そもそもCakePHP本体のコードだし・・・
664 名前:nobodyさん mailto:sage [2013/12/09(月) 11:48:24.86 ID:???] クラス名も書かず$this $thisって・・・メソッドで判断できるからまあいいけど 問題にしてるクラスが何かってことくらい明確に書いたほうが回答者が質問の意図わかりやすいと思うの あとRESTfulかどうかってステータスコードの扱いと何か直接的な関係あるの? ステータスコードを適切に設計するのはREST以前の問題でしょうに
665 名前:nobodyさん mailto:sage [2013/12/09(月) 12:09:57.41 ID:???] チラ見しただけだけど 確かに>>660 の言うとおりControllerTestCaseクラスの_testActionメソッドを見る限りは ちゃんと$headersプロパティにレスポンスヘッダの情報が入るようにみえるね その前の条件分岐によっては入らないケースがあるのかな?
666 名前:nobodyさん mailto:sage [2013/12/10(火) 18:08:28.36 ID:???] PDOでCake風に使えるライブラリを書こうとしたけど、面倒で止めた
667 名前:nobodyさん mailto:sage [2013/12/10(火) 18:16:34.35 ID:???] >>666 cakeを使おうと思わないのは何故なんだろう?
668 名前:nobodyさん mailto:sage [2013/12/10(火) 21:50:48.63 ID:???] >>667 Cakeだと規模が大きくなりすぎるし、ファイル数も多い。 それに既に運用しているサイトだと、 Cake使わないほうが静的ファイルとの共存がしやすい。
669 名前:nobodyさん mailto:sage [2013/12/10(火) 22:48:38.38 ID:???] 俺、人の作ったcakephpとか触ったことないんだけど、みんなは、DB設計とかめちゃくちゃでも我慢してその上からコードを編集するの?
670 名前:nobodyさん mailto:sage [2013/12/11(水) 00:30:44.85 ID:???] DB設計?モデルのことか? プラグインなんか使う時は自分のやり方と違うから戸惑うけど、 気にせずに編集していくな。
671 名前:nobodyさん mailto:sage [2013/12/11(水) 10:49:31.96 ID:???] 引き継ぎ案件の話なんか?
672 名前:nobodyさん mailto:sage [2013/12/11(水) 16:23:21.68 ID:???] DBの命名規則がよくわかりません。 例えばユーザテーブルを「users」という名前でつけたとして、 ユーザが所持しているアイテムを管理するテーブルを作りたいとします。 そういう場合は user_items users_items どっちの名前が適切なんでしょうか?
673 名前:nobodyさん mailto:sage [2013/12/11(水) 16:53:19.79 ID:???] >>672 ただの items でitemsテーブルの中にuser_id
674 名前:nobodyさん mailto:sage [2013/12/11(水) 17:43:03.38 ID:???] >>673 なるほど。 関連するテーブル名を連結させる必要はないんですね。 ありがとうございました。
675 名前:nobodyさん mailto:sage [2013/12/11(水) 19:34:39.55 ID:???] 接頭辞として使う場合もあるよ。 その際は、user_itemsが正しい名前になる。
676 名前:nobodyさん mailto:sage [2013/12/11(水) 20:01:39.21 ID:???] >>671 引き継ぎ案件。 自分で昔作ったサイトとかもリニューアルする時、DBが複雑になってる時があって構造を直すんだけど相当手間だし、バグの原因になる。 こういう場合はみんなは そのまま使うか、構造を変えるかどっち?
677 名前:nobodyさん mailto:sage [2013/12/11(水) 20:35:59.75 ID:???] 引き継ぎで、その後のメンテナンスの必要性が明確じゃない時は なるべくそのままにしておく。 長期間の保守契約も含めた場合は話は別。 自分のサイトなら極限まで自分の好きにする。 じゃなきゃ自分でやる意味なくない?
678 名前:nobodyさん mailto:sage [2013/12/11(水) 21:44:14.31 ID:???] >>677 ありがとう!
679 名前:nobodyさん mailto:sage [2013/12/11(水) 23:56:50.75 ID:???] どういたしまして
680 名前:nobodyさん mailto:sage [2013/12/12(木) 01:28:30.30 ID:???] >>679 誰だよお前w
681 名前:nobodyさん mailto:sage [2013/12/12(木) 01:30:43.56 ID:???] >>680 俺だよ! 誰なのかあててみ!
682 名前:nobodyさん mailto:sage [2013/12/12(木) 03:41:11.74 ID:???] >>681 俺かよ!マジかよ!ざけんなよ!
683 名前:nobodyさん mailto:sage [2013/12/12(木) 04:05:39.56 ID:???] いや、ここは俺が。
684 名前:nobodyさん mailto:sage [2013/12/12(木) 05:30:01.88 ID:???] ようじょ、ようじょ
685 名前:nobodyさん [2013/12/12(木) 11:49:32.21 ID:G/DBAFTk] cakephp1.3で$this->Auth->user()でもってこれる情報って 1つか、もしくは全部? idとusernameの二つの値を持ってきたいのですが、 どなたかご存知の方いたらお願い致します。
686 名前:nobodyさん mailto:sage [2013/12/12(木) 11:59:53.86 ID:???] >>685 1レコードそのまま取れなかったっけ?
687 名前:nobodyさん mailto:sage [2013/12/14(土) 00:57:14.30 ID:???] cakephp1を、そのままcakephp2にしてくれと言ったら、いくら取る? 俺なら最低20万円。
688 名前:nobodyさん mailto:sage [2013/12/14(土) 02:23:18.09 ID:???] 20万〜2000万ぐらいだな。
689 名前:nobodyさん mailto:sage [2013/12/14(土) 02:25:37.01 ID:???] >>687 まぁ規模によるよね。
690 名前:nobodyさん mailto:sage [2013/12/14(土) 02:40:33.10 ID:???] 俺も今 php4 + CakePHP1.1 で稼働しているサイトを php5.4(以上)のサーバーで 稼働できるように頼まれるかもしれない。 工数が全く見えないんだけどどうやって見積もり取ればいいんだろう。
691 名前:nobodyさん mailto:sage [2013/12/14(土) 02:41:06.36 ID:???] 規模もだけど現在のコードによる。 cakephp2を考慮して正しく書かれたコードと 全く考慮しない上に、間違った使い方ばかりした 汚いコードでは100倍ぐらい差がでても不思議ではない。
692 名前:nobodyさん mailto:sage [2013/12/14(土) 02:44:20.85 ID:???] >>690 移行ではなく、全部最初から作り直しの工数を見積もればいいよ。 仕様を0から考える時間 or 現在のシステムを理解するのにかかる時間 + 0から開発した時の時間。 決して、今あるコードを再利用できるから 開発時間が短縮できると思ってはいけない。 再利用できるように使えるように作られたコードであれば再利用できるが、 使えるかもしれないというコードは、基本的に使えない。
693 名前:nobodyさん mailto:sage [2013/12/14(土) 03:06:53.02 ID:???] 問題は、自分が過去に作った場合だな。 蔵からしたら「お前が作ったものを新しくするだけだろ?」 ってなもんで、予算をとってもらえないことが多い。 だったら諦めろって話だが、そこで終わると仕事に繋がらないわけで、 結局は安く請け負ってしまうんだよな
694 名前:nobodyさん mailto:sage [2013/12/14(土) 03:30:14.45 ID:???] >>691-693 おぉ、色々ありがとう! 参考にさせてもらう。 これ、たぶん、断るわw
695 名前:nobodyさん mailto:sage [2013/12/14(土) 10:36:42.60 ID:???] >>693 そういう理解の客って、そもそもCakePHPを新しくするって発想すら出てこないんじゃないの? 目の前には動いてるプロダクトがあるわけで、やって欲しいのは機能の追加とかであって、 機能は増えないし変わらないけど、CakePHP2にするってことじゃないと思うんだが。 逆にCakePHP2にする事の意義を知ってる客なら、 それが簡単じゃない事も知ってるはずだと思った。
696 名前:nobodyさん mailto:sage [2013/12/14(土) 17:19:20.55 ID:???] >>695 「もっと動作を早くしてほしい」とか「サーバを変えたい」って場合がある。 または、自分がCake2用の開発に切り替えてて、 ライブラリもCake2用に作っている・使用している場合とか。 つまり、「現状より良くしたい」という要求に対して 「開発方法を変えないと出来ません」 ってなったら客も怒るだろ?こっちの事情はともかくとして。 ずっと1.3系&PHP4系を使い続けるならともかく、 技術の進化と客の要求に対応するなら、 どこかで折り合いをつけなければいけない。
697 名前:nobodyさん mailto:sage [2013/12/14(土) 22:46:14.15 ID:???] 古いとセキュリティがどうのこうの…とか言ってみれば
698 名前:nobodyさん mailto:sage [2013/12/15(日) 00:01:11.18 ID:???] cakeの1系->2系なんてほとんど互換性ないだろ。 バージョンアップのメリットないから。
699 名前:nobodyさん mailto:sage [2013/12/15(日) 01:04:45.89 ID:???] >>696 開発方法を変えるなんて言う必要ないよ。 勝手に変えればいい。 どうせ客に言っても理解できない。
700 名前:nobodyさん mailto:sage [2013/12/15(日) 01:12:59.53 ID:???] >>696 > 技術の進化と客の要求に対応するなら、 > どこかで折り合いをつけなければいけない。 なんか他人のせいにしているように聞こえるけど、 それ、技術力がないからだから。 君に足りない技術はね。今のコードを 新しいコードへ連続的に変化させていく技術だよ。 どうせ、今のを捨てて書きなおすことしか思いつかないんでしょ? この変化させていく技術力があれば、1系でも2系でも動くコードがかける PHP4系でもPHP5系でも動くコードがかける。 動かないコードを動くように変えることが出来る。 古いコードを新しいコードから利用できるように出来る。 新しいコードを古いコードから利用できるように出来る。 今の君は、このようなことをするのに何が必要かわからず またわかったとしてもそれを実現するだけの力がない。 ゴールを見据えてそこまで至るルートを見つける力がない。 ルートがわからないからいつまでたってもゴールに辿りつけない。
701 名前:nobodyさん mailto:sage [2013/12/15(日) 01:13:50.99 ID:???] >>699 その勝手に変える作業に金出してもらえないって話じゃないか?
702 名前:nobodyさん mailto:sage [2013/12/15(日) 01:15:42.18 ID:???] >>701 そんなもん、普段の開発費に含めればいいじゃないか。
703 名前:nobodyさん mailto:sage [2013/12/15(日) 01:22:24.83 ID:???] >>700 君の非難はちょっと違うと思うんだよ。 俺がオレオレフレームワークなり、ライブラリを作った上で 「PHPのバージョンが変わったら全て書き換えないといけない」 的な事を言い出すなら、「技術がないだけ」って切り捨てるのもわかる。 でも、CakePHPというフレームワークでの話だろ? Cakeが1.3→2に変わっても、君の言うようにどのバージョンでも 動けるコードになっているかな?なっていないよね。 もちろん、「CakePHP選んだお前が悪い」っ てのなら自身の選択ミスだ。俺が悪い。 だが、俺の言う「折り合いをつける」ってのは、 「なんだかんだ言われてもやる」なんだけどな。 >>693 の書き込み見てくれればわかると思うが。
704 名前:nobodyさん mailto:sage [2013/12/15(日) 01:34:39.31 ID:???] >>703 やっぱり技術力がないだけ。 CakePHPを選ぶのが間違いとかそういう話ではない。 何を選ぼうが未来がどうなるかはわからない。 安全な未来を選ぶ力が重要なのではなく、 どんな未来が来ても、そこに至るルートを見つける力が重要。 まず、フレームワークは使うが 本質的なコード=重要なコード=大部分のコード というのはフレームワークに依存しないように作る。 (作れるのが技術力) フレームワークにべったりくっついた設計にするのではなく フレームワーク ⇔ 薄い中間層 ⇔ 大部分のコード こういう設計にしておく。フレームワークは変わるのは 当たり前の話なんだから、最初からそうすべきと判断する (これも技術力) > Cakeが1.3→2に変わっても、君の言うようにどのバージョンでも > 動けるコードになっているかな?なっていないよね。 フレームワークに依存しまくるから、動かないコードが”大量に"できる。 フレームワークに依存しない部分を大量にして、依存している部分を 最小限にしておけば、動かないコードを最小限の力で移行させられる。 CakePHP1.3の時代に、まだ見ぬ2に対応することは不可能だが、 CakePHP1.3の時代でも、フレームワークが無いとみなして作るのは可能だ。
705 名前:nobodyさん mailto:sage [2013/12/15(日) 01:43:20.20 ID:???] フレームワーク等、バージョンが違ったとき 互換性が100%でないのは知っているし100%の互換性はないのが普通。 book.cakephp.org/2.0/ja/appendices/2-0-migration-guide.html > 2.0 移行ガイド > このページはプロジェクトを2.0に移行する手助けをする、 > CakePHP 1.3からの変更点の要約をします。 またこれは、コアへの > CakePHP 1.3ブランチからの変更点への最新の開発者リファレンスともなります。 > 必ずこのガイドにある新機能とAPIの変更の全てのページを読んでください。 こういうのもある。たいていの有名どころであれば移行する手段は用意されている。 これを読めば、何が良くて何がダメでダメなものはどう対処すればいいかわかるはず。 こういうのを読んで、移行できない問題点を見つけて、すぐに諦めてるでしょ? 移行っていうのは、自分の作ったシステムのフレームワークを入れ替えて そのままじゃ動かない。あーだめでした。もうお手上げだー。 移行できない。いつまで延命できるかなー。ってこういうものではない。 移行できないものをどうやれば移行できる形にできるか見つけて、 直して、必要ならば新旧両対応できる書き方に書き換えながら、 移行できない問題点を潰していくのが本当の移行の仕方だ。 これが技術力なんだよ。
706 名前:nobodyさん mailto:sage [2013/12/15(日) 01:47:21.85 ID:???] >>704 君の非難を素直に受けるし、技術が無いのも確かだろう。 でも、怒りの矛先を向けるのは俺じゃないと思うんだが。 君は技術ありきで話をしているけど、話の最初は>>687 だよ? 君が作った素晴らしいコードなら、1.3だろうと2だろうと3だろうと チョチョイのチョイでバージョンアップできるから、困らないかもしれないね。 だから、バージョンアッップ後の更新作業をしてもお金取ろうとしないのかもね。 でも、そういう考えならやっぱり俺が提示する 「技術の進化と客の要求に対応して折り合いをつける」 ってな事にならないかな? そもそもスレの流れをちゃんと見てるか? ちゃんと見ないのに非難する人間って技術力高いのかなぁ。
707 名前:nobodyさん mailto:sage [2013/12/15(日) 01:51:11.60 ID:???] >>706 > 君が作った素晴らしいコードなら、1.3だろうと2だろうと3だろうと > チョチョイのチョイでバージョンアップできるから、困らないかもしれないね。 それは大きな勘違い。 未来なんてわからないし、最初は技術力低いのが当たり前 フレームワークなんて難しい物を、最初から完璧に使いこなすことなんて不可能。 最初から素晴らしいコードなんてかけるわけがない。 じゃあどうするか。 それが連続的に変化させていく技術力だよ。 高い開発技術ではなく 汚いコード(古いコード)から、綺麗なコード(新しいコード)へ 変化させていく技術力。 それが圧倒的に足りない。
708 名前:nobodyさん mailto:sage [2013/12/15(日) 01:52:59.47 ID:???] 具体的にどんなコード書いてるんだかw 全部ラップしてるんでしょ?オーバーヘッドえらいことになるやん
709 名前:nobodyさん mailto:sage [2013/12/15(日) 01:55:27.23 ID:???] >>707 だったら、それを俺じゃなくて 「Cakeのバージョン変えたいけど、お金もほしい」 って奴に言ってくれよ。 俺はどちらかというと、あんたみたいな考え方だよ。 向上心もなく、単に金がほしいなら 「技術の進化と客の要求に対応して折り合いをつける」 ってな言い方はしないだろ? どこがあんたの気に触ったのかしらないけど、 頼むからスレの流れを読んで非難してくれ。技術云々を語る前にな。
710 名前:nobodyさん mailto:sage [2013/12/15(日) 02:20:52.91 ID:???] 普通に考えて、必要なのは技術力でなく交渉力だと思うんだな。
711 名前:nobodyさん mailto:sage [2013/12/15(日) 03:25:11.57 ID:???] 金出せよ(直球
712 名前:nobodyさん mailto:sage [2013/12/15(日) 07:14:03.45 ID:???] >>696 なんか俺へのレスから長々と続いてるみたいだけど、それは置いといて。 もっと動作を早くするとか、別のサーバーにのせるために、 CakePHP1から2にする必要があるなら、 それは客が負担するコストじゃね? 実際CakePHP2は1より早くなってるし、キャッシュエンジン使うとかリバースプロキシの導入とか、 他の手も考えてみて、CakePHP2化が有効なら、 後は普通に見積もって提案するのがいいと思った。 機能追加のために、CakePHP2用のライブラリが使えないことに関しても、 CakePHP2化してあれば、機能追加時に使えるライブラリの選択肢が増えて、 機能追加の見積もりが安くなるかもしれないから、コストかけてCakePHP2化しませんか? って話にならんかね。 それで、CakePHP1のままって言われたら、機能追加は相対的に高めの見積もりになり続ける、と。 まぁCakePHP1で保守開発するのは、高めにもらってもあまりやりたくは無いけど。
713 名前:nobodyさん mailto:sage [2013/12/15(日) 13:49:38.36 ID:???] 全部ラップするくらいならオレオレフレームワーク作れよと。 フレームワークの上にフレームワーク乗っけてるようなもんだから 何がやりたいのかわけわからんわ。 どんなにラップしようがcakephpのバージョン上がったら それに合わせて書き換えないと動かないんだから それならはじめからラップなんてしなくていいのよ。 ビジネスロジックだけ分けておくとかならともかく。 ばかばかしいわ
714 名前:nobodyさん mailto:sage [2013/12/15(日) 15:02:58.71 ID:???] >>713 御意。
715 名前:nobodyさん mailto:sage [2013/12/15(日) 21:35:08.31 ID:???] >>713 > 全部ラップするくらいなら 誰がそんなこと言ってんの?
716 名前:nobodyさん mailto:sage [2013/12/15(日) 21:36:55.56 ID:???] あぁ、こいつか。>>708 > 全部ラップしてるんでしょ?オーバーヘッドえらいことになるやん いきなり的はずれなこと言い出したのはこいつだな。 こいつ以前にはラップという話は出てきていない。 なんでラップなんかするんだか。
717 名前:nobodyさん mailto:sage [2013/12/16(月) 13:36:53.84 ID:???] 上の方で、バージョンの差異を吸収出来る様に云々って言葉が出てきたから、 ラップって言ったんじゃない? なんか言っている事はすごく正論なんだが、金という最も大事な項目を考えないで議論している人がいる気がする。 現実と理想とで議論しても何時までもかみ合わないというか。
718 名前:nobodyさん mailto:sage [2013/12/16(月) 17:10:04.70 ID:???] >>712 みんな名無しなので話がややこしくなるが、 俺は>>693 、696を書き、なぜか煽ってきた>>700 は 「他人(客)のせいにするのではなく、自身の技術の無さを問題視しろ!」 と言ってるわけだ。 だが、俺はそもそも技術云々なんて論じてないし、 出来ない(やらない)とも書いてない。 俺の意見としては>>696 に書いたとおり、 「客がバージョンアップを希望する場合もあるし、 だからといってその分のコストを請求し、納得させるのも難しいから、 どこかで折り合いを付けなければいけないね」 と言った、中立的な発言をしたわけだ。 開発者としてはバージョンアップでもお金欲しいけど、 客は見た目変わらないからお金を出しづらいね、みたいな。 なのに、なぜか「技術が無いから対応できないんだ!}みたいな非難をされている。 きっとレスの流れを見ずに一部だけを切り取って腹が立ったのだろうけど、 未だに俺のレスの何が癇に障ったのかはわからない。
719 名前:nobodyさん mailto:sage [2013/12/16(月) 18:01:53.46 ID:???] >>718 お金を出さない客のためになぜ働くんだろうか?
720 名前:nobodyさん mailto:sage [2013/12/16(月) 22:23:01.69 ID:???] >>719 俺が1.3→2.2にした時は、 フレームワークのバージョンアップとは言わずに、 他の機能を追加する面目で対応したよ。 1.3のままだと不都合を感じたし、蔵も新機能が欲しかったからね。 だけど、バージョンアップだけで見積請求してもいいと思うし、 それに苦言を呈してくる客に対してメリットを感じなければ、 付き合いを止めればいい。それだけの話だよ。 どっちの言い分も考えた上で発言しているだけだから。
721 名前:nobodyさん mailto:sage [2013/12/17(火) 01:14:36.31 ID:???] >>720 > 他の機能を追加する面目で対応したよ それが普通 で、そういうことができないって言ってるんでしょ? 自分の書いたコードが1.3にがっつり依存してしまって 全部書き直しぐらいな、そうとう大変なことになってしまってるから。 だからフレームワークを使うのはいいが、 依存しまくらないようにしろという話。 それが出来ない奴は技術力無いってことよ。 そういったらなぜか全部ラップするとか言う 斜め上の対応策が出てきてワロタ。 そうか、技術力低いと、そういう間違った対応をするのか。
722 名前:nobodyさん mailto:sage [2013/12/17(火) 01:16:55.25 ID:???] >>718 > なのに、なぜか「技術が無いから対応できないんだ!}みたいな非難をされている。 違う違う。「技術がないから金がかかるんだ」って非難してる。 CakePHPの1系から2系へのバージョンアップなんて >>720 みたいに、他の機能を追加する名目で対応しろよ。
723 名前:nobodyさん mailto:sage [2013/12/17(火) 04:19:56.51 ID:???] >>722 どのくらい大変かは、アプリのボリュームにもよるだろうなぁ。 コンポーネントやビヘイビアをちゃんと書いて、DRYに作っていれば、 移行系は手を入れる必要がある箇所が少なくなって楽になるとは思うけど、 影響がある化も知れないアクションは全てだから、 ボリュームが大きいと、動作確認だけで大変になる。 テストを書いてたとしても、フロントの振舞いこみで確認しないと、 もしエンバグしたら事だからなぁ。 あと確か、1系から2系で、テストフレームワークが変更になった気がするし。 フレームワークのバージョンの移行なんて、ボタンひとつで出来るわけじゃないし、 時間を使う以上金はかかるよ。お仕事だもの。 単純に移行だけで、機能も増えないし見た目も変わらないとなると、 無知な客からすると、どんな見積もりを出しても高く見えるだろうけどね。 でも、無知な客はむしろよりコストを負担して欲しいわ。
724 名前:nobodyさん mailto:sage [2013/12/17(火) 11:07:41.43 ID:???] 誰が誰だかよくわからなくなってるなw
725 名前:nobodyさん mailto:sage [2013/12/17(火) 11:10:20.38 ID:???] >>721 >で、そういうことができないって言ってるんでしょ? 「それが普通」って認めてるのに、出来ないって言ってるとは?? >>722 718=720なわけだが。レスの感じでわかると思ったけど。
726 名前:nobodyさん mailto:sage [2013/12/17(火) 20:14:25.92 ID:???] 結論、世の中、金。
727 名前:nobodyさん mailto:sage [2013/12/18(水) 02:28:32.22 ID:???] かねくれかね
728 名前:nobodyさん mailto:sage [2013/12/18(水) 08:28:28.95 ID:???] ここ数年、Cakeを卒業したいと思いつつ、やはり金と時間が大事で Cakeを使い続けてるわ…
729 名前:nobodyさん mailto:sage [2013/12/18(水) 17:52:24.89 ID:???] まあね、Cake以外を勉強する時間も 書籍に消える金も大切ですもんね。
730 名前:nobodyさん mailto:sage [2013/12/18(水) 23:54:54.14 ID:???] そんなみみっちい
731 名前:nobodyさん mailto:sage [2013/12/30(月) 17:33:32.85 ID:???] CakePHPよりいいフレームワークなんてないからね
732 名前:nobodyさん mailto:sage [2013/12/30(月) 18:23:15.55 ID:???] 皆さん、良いお年を
733 名前:nobodyさん mailto:sage [2013/12/30(月) 18:57:43.73 ID:???] 来年はPHP 6出ますように
734 名前:nobodyさん mailto:sage [2013/12/30(月) 19:49:29.10 ID:???] 来年はCakePHP卒業
735 名前:nobodyさん mailto:sage [2013/12/30(月) 19:50:02.15 ID:???] ついでにPHPも卒業
736 名前:nobodyさん mailto:sage [2013/12/30(月) 21:52:42.70 ID:???] そして2ちゃんも卒業
737 名前:nobodyさん mailto:sage [2013/12/30(月) 22:11:14.32 ID:???] 童貞も卒業
738 名前:nobodyさん mailto:sage [2013/12/30(月) 22:45:31.59 ID:???] ブラックIT会社も卒業
739 名前:nobodyさん mailto:sage [2013/12/30(月) 22:46:21.83 ID:???] 人生も卒業
740 名前:nobodyさん mailto:sage [2013/12/31(火) 03:34:51.36 ID:???] マジレスするとCake PHPよりゆるくて俺俺ができるフレームワークないからCake最強 ただし引き継ぎは出来ないと思う
741 名前:nobodyさん mailto:sage [2013/12/31(火) 04:17:37.80 ID:???] Yii
742 名前:nobodyさん mailto:sage [2013/12/31(火) 09:57:07.65 ID:???] ああYiiを忘れてた ゆるゆる具合が素晴らしいな
743 名前:nobodyさん mailto:sage [2013/12/31(火) 11:56:15.23 ID:???] ゆるいってどういう意味?
744 名前:nobodyさん mailto:sage [2013/12/31(火) 12:18:53.48 ID:???] Cakeは緩すぎてダメだ 次のシステムは別なのにするわ Viewがひとつの<?php ・・・ ?>で括られてたり、モデルやコンポーネントを呼んでゴリゴリロジック書いてたりするシステムのメンテはもう無理
745 名前:nobodyさん mailto:sage [2013/12/31(火) 13:22:04.12 ID:???] >>744 URLに対応したファイルがあって、そこにあれこれ書かないと理解できない人たちの産物か
746 名前:PHPスレ127 [2013/12/31(火) 16:49:17.45 ID:4Xz0mw7Z] PHPスレから来ました Cakeで途中からMySQLのテーブルに列を増やしたんだがクエリがそれに追随して増えてくれん そりゃ、$this->query()で直接書けばいいんだが、fetchなんかが増えた列に対応してくれん、、、 どこをなおせばいいんだ? Model/*phpでdisplay属性に追加すればいいのか?
747 名前:nobodyさん mailto:sage [2013/12/31(火) 19:02:25.74 ID:???] >>746 >クエリがそれに追随して増えてくれん 普通はフィールドの変更は即座に反映されるぞ。 もっと詳しく書かないと何も言えんがな。 「display属性」って、もう何が何だか・・・
748 名前:nobodyさん [2013/12/31(火) 20:06:02.40 ID:8qYMp9pv] cakePHPだとどの位の大規模サイトまで耐えられるのかな?
749 名前:nobodyさん mailto:sage [2013/12/31(火) 20:13:53.91 ID:???] コントローラーが400個あるぐらいのサイトまでなら仕事したことある
750 名前:nobodyさん mailto:sage [2014/01/01(水) 01:29:18.48 ID:???] >>749 テーブル数はどのくらい?
751 名前:nobodyさん mailto:sage [2014/01/01(水) 01:39:21.82 ID:???] >>746 CakePHPは、スキーマをコードにしないので、 普通にModelのfind()を使えば、増やしたカラムは取得できるよ。 CakePHPを使っててfetchというメソッドは書いたことが無いから、何のことかわからん。 注意点としては、実はスキーマはキャッシュとしては吐き出されてるから、 このキャッシュが残ってて、カラム追加が反映されないというのはある。 運用モードのdebug 0だと、それなりの時間キャッシュされてる。 開発中ならdebug 2にしてるはずだから、それならキャッシュは毎回生成されるはずなので問題ない。
752 名前:nobodyさん mailto:sage [2014/01/06(月) 13:53:28.04 ID:???] 3.0ついにきたか。
753 名前:nobodyさん mailto:sage [2014/01/06(月) 17:42:05.41 ID:???] Cakeで使わないフォルダって削除してる? TestとかVendorとかLibとか。 それともデフォルトのままにしてる?
754 名前:nobodyさん mailto:sage [2014/01/06(月) 18:02:00.84 ID:???] 使うから削除しない
755 名前:746 [2014/01/06(月) 22:30:53.31 ID:nz1Q23oZ] >>753 Libは要るだろw
756 名前:nobodyさん [2014/01/07(火) 00:08:21.82 ID:uOROpRea] 皆様の高い知見を期待してスレ違いの質問をさせていただきます。 世界中に事業者ユーザーを持っているサイトを運営しています。 ただ、ばかばかしいことに、彼らが本当に存在しているのか確信がありません。 本来であれば、事業者ユーザーの申請があったときに、手紙でアクティベート用のコードを送る云々などが本人確認には最適だと思うのですが、 実はこれ、費用が莫大になります。 実在する事業者だけを集めたい場合、何か優れた認証方法はないでしょうか?
757 名前:nobodyさん mailto:sage [2014/01/07(火) 01:53:19.80 ID:???] >>756 サイトを止めてみて、クレームをあげてきたのが本物のユーザー
758 名前:nobodyさん mailto:sage [2014/01/07(火) 02:26:20.62 ID:???] >>753 消す必要ないしなぁ
759 名前:nobodyさん mailto:sage [2014/01/07(火) 02:28:06.56 ID:???] >>756 登記簿謄本でも送ってもらえば?
760 名前:nobodyさん mailto:sage [2014/01/07(火) 02:59:18.00 ID:???] >>752 まだ開発版の最初期だ 今のペースだと今年いっぱいかかるだろ パッと見た感じ、かなり変化してるな
761 名前:nobodyさん [2014/01/07(火) 04:15:26.41 ID:uOROpRea] >>759 グローバルで展開しているので・・・
762 名前:nobodyさん mailto:sage [2014/01/07(火) 09:48:08.32 ID:???] 3.0安定版になってもたぶん2.4のままで行きそうだ
763 名前:nobodyさん mailto:sage [2014/01/07(火) 12:32:14.31 ID:???] >>756 本人確認だけならTwilioとか使って電話応答確認すれば ある程度のフルイにはかけられるんじゃないかと思うが。 実体のある事業者かどうかなんてことは、 それこそ地方自治の役所ですら把握しかねるだろうから 諦めたほうが良いんじゃねぇの? それじゃなきゃそんだけ採算取れる事業ってことなら 結局は金かけて調べるってことにしかならないと思う むしろ安価でそれを調査できる仕組みを作ればそれだけで飯が食えるだろ
764 名前:nobodyさん [2014/01/07(火) 15:04:00.93 ID:uOROpRea] >>763 twilio、私も昨日の深夜に辿り着いて、色々調べていました 電話は他の一般ユーザーに登録させているので、その電話番号から認証すればOKということにするのが次善策なのかなと思いました。 事業者が一般ユーザーを装って、先回りで電話番号を登録してたら偽装しほうだいですが。 一般ユーザーに監視させ、疑いがある場合は手紙(住所)での認証を求めようかな。手紙は日本国内向けとそんなに変わらないので、件数さえ押さえれば何とかなります。 仰るように、日本の役所ですら全部把握するのは難しいですし、ある程度割り切りが必要ですね。 ありがとうございました。
765 名前:nobodyさん mailto:sage [2014/01/07(火) 17:44:06.60 ID:???] >>756 それってCakeで作ってるの?
766 名前:nobodyさん [2014/01/11(土) 15:05:10.50 ID:+1e/PKP4] Cake も PHPも初心者です。 ここを参考に写経しているんだけど、リダイレクト引数がわたってくれません。 ttp://libro.tuyano.com/index3?id=738001&page=5 自分が書いたコード codepad.org/PM79JO8d other の出力が dummy になってしまうので、引数がわたってないってことですよね? redirectを2通りの方法で書いてますがどっちも同じ. 環境は Win8 + Web Matrix です。
767 名前:nobodyさん mailto:sage [2014/01/11(土) 15:46:24.87 ID:???] よくわからんがとりあえず、その仕組みはCakePHPの用語で言うところの passed argumentsなので、リダイレクトはおいといてそれだけで確認してみたらどうだろう。 わかってるとは思うけど、デフォルトのルーティング設定なら、 example.com/contrllers/action/passed_arguments こういうURLになるので、 example.com/sample/other/foo これでアクセスして、送られた値= foo となるかどうか。 これが動く場合、リダイレクトした結果のURLと、上で確認したURLを見比べたら何かわかるかもしれない。
768 名前:766 mailto:sage [2014/01/11(土) 16:02:01.38 ID:???] 時刻フォーマット H:i:s のコロンがいけないみたいだと分かった。H_i_s ならうまくいく。 でも urlencode してるんだけどな。。。 IEの問題かとも疑ったけど、firefoxでも同じだった。
769 名前:nobodyさん mailto:sage [2014/01/11(土) 16:26:13.52 ID:???] >>768 ああ、そういうことか。 CakePHPにはpassed argumentsのほかにNamed parametersという仕組みがある。 これはkeyとvalueをコロンで区切ったものなんだ。 詳しくはドキュメント参照。 book.cakephp.org/2.0/en/development/routing.html#named-parameters おそらく、/で区切られたディレクトリのようなURLでありつつ、 key:valueなパラメーターを渡すために用意された仕組みなんだろうけど、 通常のクエリーストリングとできること被ってるし、 CakePHP3では廃止されると聞いてる。 実際のところはよく知らんけど。
770 名前:nobodyさん mailto:sage [2014/01/11(土) 22:11:29.88 ID:???] >>768 特におかしな所無さそうと思ってコピペしてやってみたら普通に動いたけども Mac Safari / Chrome共
771 名前:nobodyさん mailto:sage [2014/01/11(土) 22:16:34.58 ID:???] ちなみにController::redirect() に $this->autoRender = false; が既に書かれているんで リダイレクト時にはわざわざ書く必要はないっすよ
772 名前:746 [2014/01/11(土) 23:04:18.40 ID:2cCSIQxG] モデルのアソシエーションって必要? クエリで結合させてquery()に渡せば同じ事なの?
773 名前:nobodyさん mailto:sage [2014/01/11(土) 23:47:21.89 ID:???] >>772 絶対的に必要だと思うよ。 時間かけてでも学ぶべき。 query直でも同じ結果だろうけど、それじゃドライじゃないね。
774 名前:nobodyさん mailto:sage [2014/01/12(日) 07:53:33.34 ID:???] >>766 質問と関係ないけど private function now_time(){ は、 private function _now_time(){ がいいよ。 public以外は関数名に_をつけるっていう。 あと文末の?>は不要。
775 名前:nobodyさん [2014/01/12(日) 10:51:35.14 ID:vGoVpF+Z] [mysql5 apache cakephp2] バッチ処理中にテーブルロックをかけており、 バッチ処理中はクライアントからのselectをエラーとして返したいです。 こちらで試したものは、 innodb_lock_wait_timeoutを設定し、selectをタイムアウトさせる というものでしたが タイムアウトしませんでした。 どのようにすればタイムアウト(もしくはテーブルロックを検知)できるのでしょうか?
776 名前:nobodyさん mailto:sage [2014/01/12(日) 15:44:58.79 ID:???] よくわからんけどWRITEロックすればええんちゃうの?
777 名前:nobodyさん mailto:sage [2014/01/12(日) 17:33:27.87 ID:???] シェルからcakephpのcron動かす場合って、ブラウザ経由では動かないような重い処理でも動く? 共用サーバー、vpsの両方を使ってますが。教えて下さい。
778 名前:nobodyさん mailto:sage [2014/01/12(日) 18:18:22.27 ID:???] >>777 無理
779 名前:nobodyさん mailto:sage [2014/01/12(日) 18:20:25.36 ID:???] >>778 ありがとうございます。
780 名前:746 [2014/01/12(日) 19:23:52.45 ID:eraGilbY] じゃぁアソシエーションで外部結合ってどうやってかくの?
781 名前:746 [2014/01/12(日) 19:51:04.52 ID:eraGilbY] あ、モデルの片側にしか書かなきゃいいのか>>アソシエーションと外部結合
782 名前:775 [2014/01/12(日) 19:54:19.20 ID:vGoVpF+Z] >>776 バッチ処理側でlock writeをしているので、 クライアント側からselectするとタイムアウトすると思われたのですが、 タイムアウトすることなく、ずっとクエリ結果を待っている。 さらに、クライアント側が結果を待っている間に、 バッチ処理側でunlockをすると、 クライアント側にphp実行時間オーバーというエラーが表示されます。
783 名前:nobodyさん mailto:sage [2014/01/13(月) 03:03:19.61 ID:???] >>777 重いってのがどの程度のことを言ってるのかわからないけど、 ユーザーを待たせすぎるような時間のかかる処理や、 集計みたいなユーザーのリクエストに拠らないし、時間のかかる処理は、 CakePHPのシェルで書いてcronから起動するってのはよくやるよ。
784 名前:nobodyさん mailto:sage [2014/01/13(月) 03:04:51.41 ID:???] >>782 ロックとかしないからよくわからんわ。 まぁ、その辺はPDOとMySQLの間の問題だろうし、 MySQLかPHPのスレで聞いたほうがいいじゃない?
785 名前:nobodyさん mailto:sage [2014/01/13(月) 10:17:24.81 ID:???] >>783 ブラウザ越しにやると、 30秒メモリーなんたらというエラーを吐く処理ですね。
786 名前:746 [2014/01/13(月) 10:36:55.49 ID:tHg0j5+R] あれ、やっぱり外部結合がわからん、どーやってquery関数を使わずに 外部結合を実現させるんだ?
787 名前:nobodyさん mailto:sage [2014/01/13(月) 10:57:22.69 ID:???] >>786 find のパラメーターのjoinsをいじる
788 名前:nobodyさん mailto:sage [2014/01/13(月) 11:54:04.96 ID:???] >>786 has one belongs to has many をググってみよー
789 名前:nobodyさん mailto:sage [2014/01/13(月) 12:26:21.11 ID:???] アソシエーションはCakeの最初の壁
790 名前:nobodyさん mailto:sage [2014/01/13(月) 13:08:06.60 ID:???] >>785 なんかエラーメッセージが混ざってる気がするが、 cronから起動したとしてもPHPが使えるメモリ上限はphp.iniに設定されているし、 実行時間上限も、確かされていたような気がする。 そのどちらも、ini_set()で変更可能だし、確かCLI用のphp.iniを用意する方法もあった気がする。 ともあれ、ブラウザ越しでは有効な実行時間上限とメモリ上限より、 大きい上限を設定してやればいい。 設定でメモリ上限を無限にすることもできるけど、当然積んでるメモリを使い切ったらダメだから、 重すぎる処理はダメ。 あと、VPSは仮にもroot権限あるだろうからいいけど、共用は無いと思うので、 メモリ上限とかを変更できるかどうかは、鯖しだいじゃね。
791 名前:nobodyさん mailto:sage [2014/01/13(月) 13:12:00.94 ID:???] has manyはJOINをしてるわけじゃないけどな
792 名前:nobodyさん mailto:sage [2014/01/13(月) 14:00:43.33 ID:???] >>790 詳しくありがとうございます。 助かりました。
793 名前:775 [2014/01/13(月) 15:02:01.49 ID:qnOxD/aG] >>784 回答ありがとうございます。 他スレで質問してきます。
794 名前:nobodyさん [2014/01/17(金) 13:54:07.36 ID:G1JYixnY] みんな定数ってどうやって書いてる? Model View Controllerのどこからでもアクセスしたい場合は bootstrap.phpにdefineかConfigure::writeで書くのが 定石だと思うんだけど、配列の扱いが上手くいかない 扱う情報としては 1:man 2:woman 3:other という感じのシンプルなもので、 やりたいことは 1. 1というキーからmanという値が一発で取得できる 2. manという文字列から1というキーが一発で取得できる 3. radioボタンやselectボックスのoptionsにそのまま指定してフォームが作れる の3点なんだけど Configure::write('Gender', array( 1 => 'man', 2 => 'woman', 3 => 'other', ) ); って感じに書くと1と3は実現できるんだけど2の文字列からキーの取得が array_keysとか使わないとできなくて多少面倒なんだ 何かうまい書き方があったら教えてくれ
795 名前:nobodyさん mailto:sage [2014/01/17(金) 15:47:12.66 ID:???] >>794 たしかphpも5から定数に配列をつかえるようになったんじゃないっけ? 俺もあなたと同じ方法でやってます。
796 名前:nobodyさん mailto:sage [2014/01/17(金) 16:20:23.00 ID:???] Configure ディレクトリ下に単純なgetterクラスの ConfigureGender クラスみたいなのを作るというのは?
797 名前:nobodyさん mailto:sage [2014/01/17(金) 16:23:24.34 ID:???] 俺も>>794 みたいな配列作って1からmanに変換とmanから1に変換する関数をそれぞれ自前で書いてる getKeyByValue( 'Gender', 'man' ) // 1が返る getValueByKey( 'Gender', 1 ) // 'man'が返る みたいな こういう自前関数を1クラスにまとめてLib以下に置いてbootstrapでApp::usesしてる
798 名前:nobodyさん mailto:sage [2014/01/17(金) 17:29:25.79 ID:???] もうモデルにしちゃいなよ
799 名前:nobodyさん mailto:sage [2014/01/17(金) 18:22:00.66 ID:???] >>797 俺もほぼ一緒。 俺の場合、まとめ先がHelperになってる。
800 名前:nobodyさん mailto:sage [2014/01/18(土) 01:54:27.23 ID:???] >>794 って感じに書くと1と3は実現できるんだけど2の文字列からキーの取得が array_keysとか使わないとできなくて多少面倒なんだ Key/Valueだし仕方なくね? というか、3のようにして作ったoptionタグから帰ってくるのは、値のほうじゃなく、keyである数字のほうでさ、 それをDBに入れるし、取り出して使うときは1の取得で文字列にして表示だから、困った経験があまり無いぞ。 2の取得をするって機会があんまないきがする。 あってもarray_flip()でひっくり返せば配列アクセスできるし、そんなに面倒かね?
801 名前:794 mailto:sage [2014/01/18(土) 19:26:16.46 ID:???] 多数のレスありがたい 値からキーを取るのは定数定義とは別に書いた方が良さそうだね >>800 たとえばこんな感じでコントローラーやビューで使いたい ビューで使わないのなら>>798 の言うようにモデルに任せるのが一番いいんだろうけど if ($gender == Configure::read('Gender.man'))
802 名前:nobodyさん [2014/01/19(日) 10:13:44.22 ID:0MqMVmkC] 教えてください。 今、PCの故障でCAKEPHPを新しいPCへ移行中なんですが、 CAKEPHPのバージョンとソースは以降前と同じでDBを復元し、動かすと以下のエラーが表示されてしまいます。 ---------------- Missing Database Table Error: Database table logs for model Log was not found. Notice: If you want to customize this error message, create app/views/errors/missing_table.ctp ---------------- database.phpや$uses=>array()などを試しては見たのですが、原因がわかりません。 確認すべき場所など原因をご存知の方がいらっしゃいましたら教えてください。 ---------cakephpバージョン--------------- 1.3.12 ----------------database.php------------- class DATABASE_CONFIG { var $default = array( 'driver' => 'postgres', 'connect' => 'pg_connect', 'port' => '5432', 'host' => 'localhost', 'login' => 'cakeuser', 'password' => 'cakeuser', 'database' => 'phpmain', 'encoding'=>'EUC-JP', 'prefix' => '' ); } -----------------------------------------
803 名前:nobodyさん mailto:sage [2014/01/19(日) 15:30:52.90 ID:???] >>802 エラーメッセージを、読め!
804 名前:nobodyさん mailto:sage [2014/01/19(日) 15:33:16.41 ID:???] >>801 あーなるほどね。 確かにそういう使い方はしたいな。 納得はしたけど、すまんけど特に提案できる方法はもってなかった。 Configureが内部的にarray_flipしたのを持ってたりして、keyからでもvalueからでも取れればいいのになー
805 名前:nobodyさん mailto:sage [2014/01/19(日) 16:02:35.99 ID:???] Cakeで開発するとDBスキーマがいちいちキャッシュされてめんどい (テーブルにカラム増やしてもキャッシュが効いてて反映されない) モデルキャッシュを無効化する方法ないの?
806 名前:nobodyさん mailto:sage [2014/01/19(日) 16:34:55.98 ID:???] Modelの$cacheSource
807 名前:nobodyさん mailto:sage [2014/01/19(日) 23:36:21.74 ID:???] CakeEmailってめっちゃ便利なんだが、送信したあとの本文を データベースとかに保存しておきたい場合、どうすればいいんだろう。
808 名前:nobodyさん mailto:sage [2014/01/20(月) 00:26:36.62 ID:???] message()っつうメソッドがあってだな
809 名前:nobodyさん mailto:sage [2014/01/20(月) 00:29:49.05 ID:???] マッサージか
810 名前:nobodyさん mailto:sage [2014/01/20(月) 00:48:11.93 ID:???] シャッチョさんヤスイヨー
811 名前:746 [2014/01/20(月) 02:15:34.59 ID:WMGmZL6V] gmailでfromを書き換えたい・・・>>CakeEmail ま、出来ないのはCakeEmailだけじゃないけどさ
812 名前:nobodyさん mailto:sage [2014/01/20(月) 09:19:53.03 ID:???] 出来ますが?
813 名前:nobodyさん mailto:sage [2014/01/20(月) 13:51:40.06 ID:???] Twitter Bootstrap3でいいスケルトンどっかに無い?Bake用の。
814 名前:nobodyさん mailto:sage [2014/01/20(月) 14:00:14.69 ID:???] 使ったこと無いけど、BoostCakeはどうなん?
815 名前:nobodyさん mailto:sage [2014/01/20(月) 14:01:05.46 ID:???] >>814 いいよ!
816 名前:nobodyさん mailto:sage [2014/01/20(月) 14:13:36.53 ID:???] BoostCakeはいいけど、Bake用のスケルトンはいってなくない? 前身のやつにはあったんだけど、あれはbootstrap2だし。
817 名前:nobodyさん mailto:sage [2014/01/23(木) 13:12:43.27 ID:???] 質問 $this->request->queryってコントローラのコンストラクタの中じゃ参照できないのか? 俺の勘違いだったらいかんから、お前らも試してみてくれ
818 名前:nobodyさん mailto:sage [2014/01/23(木) 13:22:37.04 ID:???] 教えてください。 1.3で作成したAPIに、SecurityコンポーネントでBasic認証をかけたいと思っています。 そこで1.3の該当マニュアルを読んで進めておりますが、 requireAuth() requireLogin() loginCredentials(string $type) この3つのどれを使うのが良いのか分かりません。 違いと実装の例など教えていただけませんか。
819 名前:nobodyさん mailto:sage [2014/01/23(木) 23:16:39.26 ID:???] >>817 parent::__construct();が抜けてんじゃねーの?
820 名前:nobodyさん mailto:sage [2014/01/24(金) 00:03:19.65 ID:???] コントローラのコンストラクタなんて触ったこと無いな。 変わったことやってんのか?
821 名前:nobodyさん mailto:sage [2014/01/24(金) 01:25:22.59 ID:???] >>818 1.3なんてもう覚えてないけど、認証はAuthコンポーネントじゃないの? CakePHP2ではAuthだぞ。 SecurityコンポーネントはCSRF対策とか、そういうの用だと思うが。
822 名前:nobodyさん [2014/01/24(金) 08:54:07.70 ID:OhuU+SsS] cakePHPの入門書でオススメあったら教えてくだしあ><
823 名前:nobodyさん mailto:sage [2014/01/24(金) 09:17:20.30 ID:???] >>821 ありがとう。CakeでウェブAPIをつくっているので、Authコンポーネントではなく、 Securityのベーシック認証にしたいのです。
824 名前:746 [2014/01/25(土) 00:27:35.89 ID:fnA/g+QM] コントローラをFacadeパターンにして実務処理は自作のちっさいコントローラクラスにやらせれば良いの? クラス設計するなら
825 名前:nobodyさん mailto:sage [2014/01/25(土) 00:34:45.21 ID:???] Model だろ普通
826 名前:nobodyさん mailto:sage [2014/01/25(土) 00:38:00.50 ID:???] CakeがMVC2の勘違いをkskする
827 名前:nobodyさん mailto:sage [2014/01/25(土) 00:42:48.60 ID:???] >>822 これ、というのは無いなぁ ただ、「CakePHP事典」と「レシピ119」だっけ? あれはひと通り目を通すといいと思う。 CakePHPの機能を結構カバーできてる。 ただ、レシピの方は今ひとつ癖があるなぁって思った。 まぁ、ひとつの参考としては良いと思うよ。 網羅性に欠けるけど「実践」もいい。 まぁ、この3冊に全部目を通して損はないと思うよ。
828 名前:746 [2014/01/25(土) 00:46:35.74 ID:fnA/g+QM] あ、モデルだよなw CakeでモデルつーとDBのテーブルを連想してしまってた
829 名前:822 mailto:sage [2014/01/25(土) 05:12:01.03 ID:???] >>827 あざっす m(_ _)m
830 名前:746 [2014/01/25(土) 13:37:17.68 ID:fnA/g+QM] いきなりbakeを使わせる本を入門書には向かないと思うが>>実践
831 名前:nobodyさん mailto:sage [2014/01/25(土) 13:56:53.37 ID:???] 知らない
832 名前:nobodyさん mailto:sage [2014/01/25(土) 14:52:32.45 ID:???] >>828 CakePHPのモデルはDBとくっつきすぎていて、 そこにロジックを入れるのはちょっと違う感じもするようになった。
833 名前:nobodyさん mailto:sage [2014/01/25(土) 14:55:02.37 ID:???] CakePHP辞典も入門としては使えないと思った。 いやいい本だし、入門時でも慣れてきても、 ソースコードを見るかCakePHP辞典を見るかって時はあるから、 持っといて損はないと思うけど。 あれで入門しようというのは難しいとおも。
834 名前:nobodyさん mailto:sage [2014/01/25(土) 15:06:07.31 ID:???] だから、コレというのはないと言ったんだ。 1系の時みたいな手取り足取りのチュートリアル本は無いからな。 もし本当に初心者で一からCakePHPをやりたいっていうんなら ブログチュートリアルを暗記できる程度まで繰り返し覚えろとしか言えない。 ただ、実践本が初心者向けでないことは確かだった。あれは奨めない。
835 名前:nobodyさん mailto:sage [2014/01/25(土) 15:07:52.67 ID:???] ActiveRecord=モデルみたいな誤解を広めたRailsが全ての元凶 Cakeは犠牲になったのだ
836 名前:827, 834 mailto:sage [2014/01/25(土) 16:41:20.78 ID:???] 「はじめてのCakePHP (I・O BOOKS)」っていう本があるみたい。 読んでないんでなんとも言えないけど、 Amazonの書評とサンプルコードダウンロードしてみた感じ、 入門書として、ひょっとしたら良いかもしれない。 コードの一部が古いので注意する必要ありだろうけど。 (パッと見て、コントローラのプロパティ宣言キーワードに public を使わずに var を使ってるのはヤバイわ)
837 名前:827, 834 mailto:sage [2014/01/25(土) 17:56:10.31 ID:???] そういえばCakePHP辞典って正誤表を公開するって 随分前に著者がツイッターで言ってたんだけど 音沙汰なしだな。。。
838 名前:nobodyさん mailto:sage [2014/01/25(土) 18:59:02.53 ID:???] >>837 まさぴーだな。 あの人のソースが一番わかりやすいし綺麗。 本もわかりやすい。 俺はお勧め。
839 名前:nobodyさん mailto:sage [2014/01/25(土) 22:40:50.09 ID:???] CakePHP2でvarを使ってるってだけで敬遠したい。
840 名前:746 [2014/01/26(日) 00:18:39.58 ID:2eFTwFkL] メンバ変数、みたいなのは$componentsに入れなきゃダメなのか? コントローラで $this->hogehoge みたいな使い方したい場合
841 名前:746 [2014/01/26(日) 00:27:11.25 ID:2eFTwFkL] 多少、誤植とかあるけど WebデザイナーのためのCakePHPビューコーディング入門 ttp://www.amazon.co.jp/dp/4798033146/ はプログラマ向け入門書としてもそこそこよかったと思った。前半しか読んでねーが
842 名前:nobodyさん mailto:sage [2014/01/26(日) 00:45:57.89 ID:???] >>839 俺もvarだけどなんかダメなん?
843 名前:nobodyさん mailto:sage [2014/01/26(日) 02:18:11.54 ID:???] >>842 PHP5になって何年たったと思ってるんだ。
844 名前:nobodyさん mailto:sage [2014/01/26(日) 02:19:40.46 ID:???] >>798 俺モデルにstaticで関数作って使うクラスだけapp::usesして使ってるけど(bootstrapまわりのグローバル層には置かない) これって少数派なのかね
845 名前:nobodyさん mailto:sage [2014/01/26(日) 02:20:44.56 ID:???] >>746 あなたの書き込み最初から読ませてもらったけど、 フレームワークって、あなたの思ってる「プログラミング」にくらべると すごく不自由なもんだと自覚した方が吉。 何しろ他人が「型」を作って、それに自分を嵌めこむ作業だから。 特にCakePHPはCodeIgniterやYiiなんかと比べるとその傾向は強いと言われる。 まずは開発者の意図を極力咀嚼して定形と言われる方法で開発するところから始められないなら、 フレームワークなんて使う意味ないよ。
846 名前:nobodyさん mailto:sage [2014/01/26(日) 02:25:24.29 ID:???] array()はまだいいけど、varはさすがにちょっと…。
847 名前:nobodyさん mailto:sage [2014/01/26(日) 02:25:56.65 ID:???] >>840 PHP初心者なのか。 メンバ変数って単語を知っててなぜそうなるのか疑問だが、 class Foo{ public $foo = 1; public function bar(){ return $this->foo; } } な
848 名前:nobodyさん mailto:sage [2014/01/26(日) 02:26:09.48 ID:???] >>844 全然いいんじゃない? static ならテスト書きやすいし ただ、Modelに入れずにLibに入れるかってのはある。 Modelにしちゃうと色々副作用とか考慮する必要もあるし。
849 名前:nobodyさん mailto:sage [2014/01/26(日) 02:32:12.27 ID:???] >>848 とっ散らかるのイヤだなーとモデルごとに置いてて、今まで特に問題は起きてないけど Lib層の使いこなしは考えていきたいね ロジックはMVCで分けても、定義まわりは汎用的に使いまわしたいこと多いしな
850 名前:nobodyさん mailto:sage [2014/01/26(日) 02:51:45.24 ID:???] マジか!もうvar使わないのか。 時代が流れるの早いなー!
851 名前:nobodyさん mailto:sage [2014/01/26(日) 03:30:04.12 ID:???] >>847 いや、>>840 が言ってるのは Component のオブジェクトプロパティを 直接指定できないかってことでしょ。 で、フレームワークが $components の内容を参照して勝手にセットする しか方法がないのかってことにイラついてるんだろ。
852 名前:nobodyさん mailto:sage [2014/01/26(日) 04:22:27.54 ID:???] >>851 ああそういうことか。 じゃぁ $this->Foo = $this->Components->load('Foo');
853 名前:nobodyさん mailto:sage [2014/01/26(日) 04:25:33.67 ID:???] >>850 おいおい、俺がこの業界にまだ入りかけで、アルバイトでPHP書いてたときですら、 アクセス修飾子書いてたぞ。 もう5年以上は前の話だ。
854 名前:nobodyさん mailto:sage [2014/01/26(日) 04:51:42.85 ID:???] >>853 PHP歴、俺は10年以上だな。おっさんだ。。。 プログラムだけは経験多くても新しいのについてけないとダメだな。 var でも privateでもpublicでも何も変わらん気がするんだけどどうなん? で、varが3文字で無難だからという理由で使ってるんだけど。 教えてください。
855 名前:nobodyさん mailto:sage [2014/01/26(日) 05:06:46.50 ID:???] >>854 テスト書いてる? 変えちゃいけないインターフェース(public){=テストする}と 変えてもいい内部でだけで使うメソッド(private){=テストはpublicメソッド経由で行う}を varでどうやって区別するんだい? どっちでもちゃんと動くからいいというものではなく、 重要なのは、コードに"意図"を記述できるかどうかだよ。
856 名前:nobodyさん mailto:sage [2014/01/26(日) 05:09:49.74 ID:???] >>855 すげー! そんな違いがあるのか。 勉強になりました。 テストは書いてないです。 ありがとう。
857 名前:nobodyさん mailto:sage [2014/01/26(日) 05:21:51.60 ID:???] >>854 アルバイトが長かっただけで俺もそれなりにおっさんだけど。 varで書かれたコードは見た目が気に食わない。 というのも、varは互換性のためpublicと同じになるから、 private, protectedが使えないわけだけど、 JavaScriptみたくアクセス修飾子がないけどうまくやってる言語もあったりするから。 とはいえ、途中参加のPHPプロジェクトに入ったりしたら、既存のコードを読むときに、 publicなのかそうじゃないかは、コードを読むときに手がかりにするし、 というかpublicメソッドだけ追ったほうが概要がつかみやすいと思う。 まぁ、1人で作ってたり少人数チームだったりすると、アクセス修飾子なんてなくても、 なんとなくわかったりするし、privateには _ つけるといった運用カバー的方法もあったりするし、 どうしても徹底しないととは、正直言いづらい。 だから、見た目が気に食わない。
858 名前:nobodyさん mailto:sage [2014/01/26(日) 09:20:27.99 ID:???] >>854 varもpublicも変わらんというならまだしも、 privateとpublicが何も変わらんと思ってるってことは、手続き型しかやってなさそう。 テストの無い数千行の神クラス・・・。
859 名前:746 [2014/01/26(日) 10:00:51.56 ID:2eFTwFkL] >>847 > >>840 > PHP初心者なのか。 PHPもCakeも3ヶ月くらいしか経験はない 練習で掲示板を作ったくらいだ > > class Foo{ > public $foo = 1; > public function bar(){ > return $this->foo; > } > } できるんだな。サンクス 今作らされてる仕事でコントローラーばかりにコードを書くとクラスが肥大してヤだから URLから呼ばれるコントロールをFacadeにして個別機能を小さくクラスわけて new したいな、 と思ってる所なんだ
860 名前:nobodyさん mailto:sage [2014/01/26(日) 10:25:55.73 ID:???] >>859 じゃぁ コントローラをFacadeにするのは正解。 ビジネスロジックを別クラスにするのも正解。 一般的に、ビジネスロジックはModelに書くのが良いとされている。 一つのModelばかりになんでも詰め込んで肥大化させるのはあまり良くない。 複数のモデルで共通する振る舞いはBehaviorを作るのが正解。 Modelとテーブルの関係を外して新たなModelを書くのはOK。 Libに新しいクラス作ってもいいよ。 ってところ。
861 名前:746 [2014/01/26(日) 10:42:05.01 ID:2eFTwFkL] >860 ありがとう。少し光が見えてきた
862 名前:nobodyさん mailto:sage [2014/01/26(日) 12:35:40.50 ID:???] 作るものにもよるかもしれんけど、コントローラーやモデルに、 そんな沢山書かないとな場合て、そんなにないよな。 もしそうなら、コントローラーも、新たに作ったコントローラーもモデルも、 数行しか書いてないみたいには、しないほうがいいと思うよ。 find2回して、片方をforeachでまわしてちょっと加工して、 あとは表示なんてのは、そのページでしか使わないんだったら、 もうコントローラーに書いておけばいいと思ってる。
863 名前:nobodyさん mailto:sage [2014/01/26(日) 12:57:42.83 ID:???] >>862 それだと、テストが難しくなる。
864 名前:nobodyさん mailto:sage [2014/01/26(日) 13:08:34.52 ID:???] >>863 すべてをテストする必要はないんじゃね。 find2 foreach1だけなら、ほぼ間違えないし、 テスト可能にする事も含めて、テストのコストのほうが高いと思う。 foreachの中身が1行2行という想定だけど、 もしこれが複雑なものなら、foreachのとこだけ切り出してテストできるようにはしてもいいと思うけど。
865 名前:nobodyさん mailto:sage [2014/01/26(日) 15:09:54.48 ID:???] >>860 Cakeって案外不親切だよな 自由度が高いといえば聞こえはいいが
866 名前:nobodyさん mailto:sage [2014/01/26(日) 17:52:52.45 ID:???] CakePHPは自由度高くないでしょ
867 名前:nobodyさん mailto:sage [2014/01/27(月) 08:26:21.27 ID:???] 2014年にもなって「varって何が悪いの?」レベルのことを言う経験10年って・・ 不勉強とかそういうレベルじゃねーだろ
868 名前:nobodyさん mailto:sage [2014/01/27(月) 09:15:59.49 ID:???] 化石だな
869 名前:nobodyさん mailto:sage [2014/01/27(月) 10:27:59.61 ID:???] (俺も正確に理解せずに使ってた、なんて言えない・・・)
870 名前:nobodyさん mailto:sage [2014/01/27(月) 13:43:50.37 ID:???] var使ってますってのは 私はいまだにOOも理解してない手続き型しか書けない老害です って宣言と同義
871 名前:nobodyさん mailto:sage [2014/01/27(月) 17:32:39.84 ID:???] アクセス権はOOに必須ではないがな
872 名前:nobodyさん mailto:sage [2014/01/28(火) 09:32:01.09 ID:???] カプセル化はOOのキモだと思う
873 名前:nobodyさん mailto:sage [2014/01/28(火) 11:26:46.25 ID:???] そりゃそうだ
874 名前:nobodyさん mailto:sage [2014/01/28(火) 12:09:08.34 ID:???] 全部publicにstaticに…ってただのファイル分割だわ そういやそんなおじさんがいたな…
875 名前:nobodyさん mailto:sage [2014/01/28(火) 12:36:13.58 ID:???] varおじさん
876 名前:746 [2014/01/29(水) 08:28:57.79 ID:4MhCoapX] アクション名と違うファイル名のctpを使うにはどうしたらいいの? アクション名がかぶりそうなんだよ
877 名前:nobodyさん mailto:sage [2014/01/29(水) 08:47:04.63 ID:???] Viewフォルダ内をコントローラごとにフォルダ分け 同一コントローラで名前がかぶりそうなら設計があやしい
878 名前:nobodyさん mailto:sage [2014/01/29(水) 17:13:25.95 ID:???] >>876 コントローラの中で $this->render('任意の名前');
879 名前:nobodyさん mailto:sage [2014/01/29(水) 22:52:44.55 ID:???] かっこいいbake用skeletonどこにありますかね… なかなか見つかりません
880 名前:746 [2014/01/29(水) 23:39:01.19 ID:4MhCoapX] >>878 サンクス。調べてたら$layerの使い方もなんとなくわかった気がしてきた
881 名前:nobodyさん mailto:sage [2014/01/30(木) 02:58:52.18 ID:???] Amazonみたいにさ、 この商品を見た人は、以下の商品も見ています。 ってのを作りたい場合、どのように作ればいいか教えてもらえませんか?
882 名前:nobodyさん mailto:sage [2014/01/30(木) 03:35:25.70 ID:???] 閲覧ページのURL、ページ遷移、滞在時間とかを取得して、 統計データから商品Aから商品Bへのスコアを計算して、 閾値を設定して、それを超えたものをスコア順に並べる みたいな感じじゃないの?
883 名前:nobodyさん mailto:sage [2014/01/30(木) 03:39:02.25 ID:???] FacebookとかAmazonレベルだと複雑なスコア算出の式をしてるだろうが、 とりあえず何らかの指標で弾き出したスコアを元にリストアップってのはどこも同じはず。
884 名前:nobodyさん mailto:sage [2014/01/30(木) 07:39:44.50 ID:???] オライリーから、集合知プログラミングって本が出てたはず わりとそのものズバリな内容が書いてあった 中のコードはphpじゃないけどpythonだから読みやすいし
885 名前:nobodyさん mailto:sage [2014/01/30(木) 09:24:11.61 ID:???] 奥が深い分野だから、Amazonと同じ精度出すだけでも、 難易度相当高いよ。
886 名前:nobodyさん mailto:sage [2014/01/30(木) 09:35:06.95 ID:???] 同じ精度出す必要無いよ。過剰実装だ。 単純に文字通り受け取って、リファラから商品IDを集計すれば良いだけだろ。
887 名前:nobodyさん mailto:sage [2014/01/30(木) 10:50:07.49 ID:???] >>884 881じゃないけど横からサンキュー
888 名前:746 [2014/01/31(金) 01:19:24.89 ID:nps2dTDl] アクションとURLの関連性を任意にしたい場合、config/route.phpのRoute::connectで指定してやればいいの?
889 名前:nobodyさん mailto:sage [2014/01/31(金) 09:22:20.73 ID:???] >>888 おっけーです
890 名前:nobodyさん mailto:sage [2014/01/31(金) 13:18:43.14 ID:???] CakePHPがあまり関係ない+そんな基礎的なことをと言われそうだけど、 よく見てるスレってここくらいだし、一応CakePHP使って作るし、質問させてくれ。 入力、確認、完了というよくあるフローの投稿機能なんだけど、 入力の段階でテキストやプルダウンなどのほかに、画像アップロードがあるんだ。 確認ページでは画像アップロードは完了させて、確認できるように表示する。 完了すれば、画像は所定のディレクトリに保持されて、ファイルパスが他のテキストとあわせてDBに入る。 確認の段階で戻ったり、完了に到達しなかったら、テキストも画像も保持しない。 良くある話だとは思うけど、確認ページ+画像アップロードが、なんか久しぶりで、 さらにcronが使えないサーバーで動かす予定なんだ。 前やったときは、daily cronで完了に至らなかったケースの画像を削除してたんだけど、 その方法が使えないから、どうしたものかと悩んじゃって。 この画像の後始末って、普通どうやってやるもんなのかな?
891 名前:nobodyさん mailto:sage [2014/01/31(金) 21:38:59.99 ID:???] >>890 俺ならcron使えるサーバー使う。
892 名前:nobodyさん mailto:sage [2014/01/31(金) 21:40:33.68 ID:???] >>890 というか、いちいち俺は削除しないな。 下手に削除プログラム走らせるとバグの原因になる。 ゴミデータあっても誰も見ないし。
893 名前:nobodyさん mailto:sage [2014/01/31(金) 22:07:45.62 ID:???] トリガなんてなんでもええやろ ユーザリクエストでもいいし外部Cronでもいいし脳ミソ0か
894 名前:nobodyさん mailto:sage [2014/02/01(土) 01:04:49.93 ID:???] 乱数でハズレ引いたユーザーに負担してもらう
895 名前:nobodyさん mailto:sage [2014/02/01(土) 11:45:31.12 ID:???] >>890 俺は正式アップロード用のフォルダとそうでないのと分けてるよ。 後から手動で消しても大差ないし、SSHからなら一瞬だしな。
896 名前:nobodyさん mailto:sage [2014/02/01(土) 12:00:34.17 ID:???] 今まさに正式アップロードになろうとしてるやつを手動で消さないように注意ね
897 名前:nobodyさん mailto:sage [2014/02/01(土) 14:32:58.78 ID:???] それは日付指定して削除すればいいだけだよね
898 名前:nobodyさん mailto:sage [2014/02/01(土) 14:57:34.78 ID:???] 解決 しゅーーりょーー!