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
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:???] 解決 しゅーーりょーー!