- 1 名前:nobodyさん [2014/03/01(土) 17:03:24.57 ID:8AJ9GD6E]
- 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/1378659370/
- 529 名前:nobodyさん mailto:sage [2014/05/15(木) 20:27:14.89 ID:???]
- >>528
くわしく
- 530 名前:nobodyさん mailto:sage [2014/05/15(木) 20:53:28.94 ID:???]
- >>529
book.cakephp.org/2.0/ja/development/testing.html
- 531 名前:nobodyさん mailto:sage [2014/05/15(木) 23:34:57.49 ID:???]
- >>525
テストコードがないと及び腰ってのすごくわかる。 自分が作ったコードですら触りたくないもん。
- 532 名前:nobodyさん mailto:sage [2014/05/16(金) 13:54:12.18 ID:???]
- では、先生方次は最近よく聞く
composerについて教えて下さい。
- 533 名前:nobodyさん mailto:sage [2014/05/16(金) 14:02:22.96 ID:???]
- あとで知ったかで話すから、ちょっと勉強する時間をくれ
- 534 名前:nobodyさん mailto:sage [2014/05/16(金) 14:26:46.96 ID:???]
- composerは依存する外部のライブラリ等を管理して
autoload処理までしてくれるもの packgistに登録されているものの他に gitやsvnとかで管理されているもの zip等で落としてくるもの、PEARとかも管理できる 依存関係の解決や、バージョンアップの追従とかが簡単にできるのがいいね 更新時にスクリプト動かしたりもできるから、さらにいろいろ使えるよ
- 535 名前:nobodyさん mailto:sage [2014/05/16(金) 14:41:38.71 ID:???]
- cakeはcomposer対応がめちゃくちゃ遅かったよな。
- 536 名前:nobodyさん mailto:sage [2014/05/16(金) 21:57:48.54 ID:???]
- composerってRubyでいうとこのgem?
- 537 名前:nobodyさん mailto:sage [2014/05/16(金) 22:04:02.91 ID:???]
- bundlerかな
- 538 名前:nobodyさん mailto:sage [2014/05/16(金) 22:12:07.93 ID:???]
- >>537
なるほど、さんきゅー
- 539 名前:nobodyさん mailto:sage [2014/05/17(土) 02:35:10.07 ID:???]
- routes.phpで指定できるURLのパターンに、DBから取得した値を設定することってできる?
例えば、 /domain/DB値 みたいな感じで ちなみに、1.3系
- 540 名前:nobodyさん mailto:sage [2014/05/17(土) 03:35:24.78 ID:???]
- >>539
2系では無理。routes.php のタイミングでは ClassRegistry がロードされていない。 1.3系は分からんが、やってみて確かめてみれば?
- 541 名前:nobodyさん mailto:sage [2014/05/17(土) 03:39:32.10 ID:???]
- Model使わずに直接SQL叩けば宜し
- 542 名前:nobodyさん mailto:sage [2014/05/17(土) 05:32:08.69 ID:???]
- >>539
うーん、たぶんできるんじゃね? book.cakephp.org/2.0/en/development/routing.html#custom-route-classes まず、カスタムルートクラスを使う。 Cookbookは英語しかないが、これ。 App::uses('CakeRoute', 'Routing/Route'); App::uses('ClassRegistry', 'Utility'); SlugRoute extends CakeRoute{ public function parse($url){ $parse = parent::parse($url); $hoge = ClassRegistry::init('Hoge'); return $parse; } } こういうカスタムルートクラス書いてみたら、$hogeにHogeのインスタンスがあることまでは確認した。 なお、phpがあるPCと、これ書いてるPHP別なので、上のコードにtypoがあるかもしれない。 カスタムルートクラスでApp::uses('ClassRegistry', 'Utility');することによる弊害があるかどうかは知らない。
- 543 名前:nobodyさん mailto:sage [2014/05/17(土) 11:47:50.48 ID:???]
- >>542
それは単にルータのクラスをRouteから変更するだけじゃん。 ルーティングのタイミング(routes.php の読み込み)は一緒だから Model のインスタンス取得できないんじゃないかってことなんだけど。
- 544 名前:nobodyさん mailto:sage [2014/05/17(土) 11:54:40.61 ID:???]
- すまん、言葉足らずだった。
ルータのクラスを変更することは ここでは問題になってないってことを言いたかっただけ。 で、今 routes.php で App::uses('ClassRegistry', 'Utility'); して Model のインスタンス取得したら問題なく動いたわ。 副作用は知らん。 1.3系は ClassRegistry ってないんだっけ? 途中から出来た? その辺はよく分からん。
- 545 名前:nobodyさん mailto:sage [2014/05/17(土) 12:16:13.55 ID:???]
- WordPressが記事URLのルーティングを管理画面から変えられるけど、
あんな感じにできれば便利だなとは思う
- 546 名前:nobodyさん mailto:sage [2014/05/17(土) 12:21:13.08 ID:???]
- 確かにそうだよな。
もっと初期段階でモデルにアクセスできる仕組みのほうがいい気がする。 他のFWとかのプロセスってこの辺りどうなってんのかな。 俺はCakeしか知らないから。
- 547 名前:nobodyさん mailto:sage [2014/05/17(土) 12:58:47.14 ID:???]
- >>546
全体のローダーとルーティングで制限がかかるローダーはタイミングが別なものが多いよ 前者でモデルの読み出しができれば使える感じ
- 548 名前:nobodyさん mailto:sage [2014/05/17(土) 13:17:23.08 ID:???]
- で、結局何が問題なの?
App::uses('ClassRegistry', 'Utility'); で初期段階でモデルにアクセスも出来たし、 あとはカスタムルートクラスで好きなようにパースして返せば、 良い書き方かはおいといて、動きそうな感じはしてるんだけど。
- 549 名前:nobodyさん mailto:sage [2014/05/17(土) 13:46:47.18 ID:???]
- うん、行ける気がする
で、>>548 こそ何が問題なの?
- 550 名前:nobodyさん mailto:sage [2014/05/18(日) 01:51:53.74 ID:???]
- >>549
質問に対してこれでできんじゃね?って方法を書いただけだから、 こっちに問題はないけど。
- 551 名前:nobodyさん mailto:sage [2014/05/18(日) 02:42:01.29 ID:???]
- この板、IDでないから誰が何喋ってんのか全く分からんw
- 552 名前:nobodyさん mailto:sage [2014/05/18(日) 04:33:21.19 ID:???]
- ところで、ClassRegistryが出てきたからついでに聞きたいんだけど、
new Hoge()じゃなくてClassRegistry::init('Hoge')が推奨されるのってなんで? 昔コントローラーじゃないところでモデル使うことがある時、 new Hoge()してるって言ったら、だめって言われたことあるんだけど、 まだ初心者だったら理由までは教えてもらえなかったんだよね。 よくわからないまま、ClassRegistry::init()を使うようにだけしてるんだけど、 理由知りたい。
- 553 名前:nobodyさん mailto:sage [2014/05/18(日) 11:39:16.13 ID:???]
- newしたら初期化されるじゃん
- 554 名前:nobodyさん mailto:sage [2014/05/18(日) 12:23:32.63 ID:???]
- phpunitのテスト駆動開発について。
テストを先に書くということですが、 メソッドを先に書く場合もありますか?
- 555 名前:nobodyさん mailto:sage [2014/05/18(日) 12:34:06.68 ID:???]
- また、掲示板サイトを作る場合、
記事を書く 記事を見る 記事を削除 の3つのケースを先に書いてテストし実装する もしくは一つの機能ごとにテストを書く実装する、のどちらが良いのでしょうか。
- 556 名前:nobodyさん mailto:sage [2014/05/18(日) 18:19:05.82 ID:???]
- >>554
テストを先に書くことがテスト駆動開発の必須条件の一つだと思うんだけど、 別に原理原則にこたわることもないと思われ。 ただ、教科書的にはまずテストを書いて赤色から発進するのが通則。 >>555 テスト駆動開発は、一般的にはアジャイル開発の一部とされている (たぶん、そうじゃない場合もあるはずなんだけどあまり記憶に無い)ので 単純なテストからだんだん複雑にして行くことを前提に、 最初は簡単な「記事を書く」テストを書いて実装して 簡単な「記事を見る」テストを書いて実装して、 簡単な「記事を削除」テストを書いて実装して・・・ってことなんじゃないかな? だけどそれも程度によるだろうから、最初はざっくりアウトライン的に 全体を作って、作りこむに従って単体テストを増やしていったりテスト自体を 詳細にコーディングするってことでいいんじゃないかな?
- 557 名前:nobodyさん mailto:sage [2014/05/18(日) 18:27:15.17 ID:???]
- >>556
ありがとうございます! 勉強になります。
- 558 名前:nobodyさん mailto:sage [2014/05/18(日) 23:31:40.02 ID:???]
- まぁ自分で書いておいてこんなこと言うのもあれだけど、
TDDに限らず、ここで聞くより専門の書籍を一冊買って それを読んで体系から身につけたほうがいい。
- 559 名前:nobodyさん mailto:sage [2014/05/19(月) 16:50:44.06 ID:???]
- 画像のバリデーションで、画像をアップロードしていない場合は
バリデーション自体を中止したいのですが、良い方法はないでしょうか? 以下のようなルールをモデルに書いています。 'image' => array( array( 'rule' => array('extension', array('jpg', 'jpeg', 'gif', 'png')), 'message' => '拡張子が違います', 'allowEmpty' => true, ) )
- 560 名前:nobodyさん [2014/05/20(火) 15:39:04.32 ID:RIYxfxGy]
- hasManyとfindについて質問です。
営業 1−多 顧客 というリレーションがあったとします。 営業 hasMany 顧客 と営業モデルに書いています。 そこで営業コントローラから 「顧客を一件ももっていない営業」をfindする方法がどうしても 思い浮かびません。 どうかヒントをいただけませんでしょうか。
- 561 名前:nobodyさん mailto:sage [2014/05/20(火) 15:56:13.36 ID:???]
- 営業 hasOne 顧客 というアソシエーションを一時的に張って、
検索条件を '顧客.id' => null とすれば行ける気がするのだがどうだろう。 あと、カウンターキャッシュという裏ワザもあるが、 アプリケーション依存になるんで一長一短。
- 562 名前:nobodyさん mailto:sage [2014/05/20(火) 16:02:52.95 ID:???]
- >>561
なるほど!試してみます。ありがとうございます。
- 563 名前:nobodyさん mailto:sage [2014/05/21(水) 16:47:46.18 ID:???]
- クックパッドってCake使ってるのかな?
なんかURLのルールが似てる気がする
- 564 名前:nobodyさん mailto:sage [2014/05/21(水) 18:35:00.58 ID:???]
- >>563
Railsじゃなかった?今は知らんけど
- 565 名前:nobodyさん mailto:sage [2014/05/21(水) 19:54:17.38 ID:???]
- ああ、Railsだから似てると感じるのか
- 566 名前:nobodyさん mailto:sage [2014/05/25(日) 12:26:20.21 ID:???]
- cakeとciのActiveRecordって
PofEAAのActiveRecordと違うと思うんだけど。何を元にしてるの?
- 567 名前:nobodyさん mailto:sage [2014/05/25(日) 13:21:00.24 ID:???]
- CakePHPにActiveRecordは実装されていない
- 568 名前:nobodyさん mailto:sage [2014/05/25(日) 14:22:54.54 ID:???]
- AppControllerを継承したクラスを継承したコントローラで
AppControllerに書かれた$uses、$componentsが使えない(マージされない)問題は Cake2では直ってるんだっけ? 今確認できないのでどなたか教えてください
- 569 名前:nobodyさん mailto:sage [2014/05/25(日) 16:32:17.75 ID:???]
- >>568
Dispatcher でリフレクション呼び出してあれこれゴニョゴニョしてるんで、 多分大丈夫。 正式なアナウンスは知らん。
- 570 名前:nobodyさん mailto:sage [2014/05/26(月) 20:03:50.85 ID:???]
- >>568
その問題、今初めて知ったわ。
- 571 名前:nobodyさん mailto:sage [2014/05/26(月) 21:17:51.86 ID:???]
- 久しぶりに自分が作った1.3のソース触ったけど、糞すぎて情けなくなる・・・
- 572 名前:nobodyさん mailto:sage [2014/05/26(月) 21:34:55.75 ID:???]
- オレの1.2のコードをやるから、その汚い糞を拭き取れ。
- 573 名前:nobodyさん mailto:sage [2014/05/28(水) 12:20:55.53 ID:???]
- カテゴリの状態を維持したまま別のコントローラーを実行するための
ルーティングってどう書けばいいですかね? /hoge/ →Categoryモデルのname「hoge」 /hoge/news/ →Newsモデルのcategory_nameが「hoge」 /hoge/news/detail/1 →Newsモデルのidが1でcategory_nameが「hoge」 こういう場合、hogeの箇所(カテゴリ名)が不特定文字列なので どういう書き方をすればいいか悩んでいます。cake2系です。
- 574 名前:nobodyさん mailto:sage [2014/05/28(水) 12:29:00.97 ID:???]
- Router::routes(array('/:category/'), array('controller' => 'categories'));
Router::routes(array('/:category/:controller/')); Router::routes(array('/:category/:controller/detail/:id')); でどう?
- 575 名前:nobodyさん mailto:sage [2014/05/28(水) 12:33:07.08 ID:???]
- あと、第三パラメータで正規表現でのフィルタリングができるんで、
3つ目のURLパターンにおいてIDは数値と決まっているなら Router::routes(array('/:category/:controller/:id'), array(), array('id' => '[0-9]+')); とすることで /hoge/news/1 をマッチさせることが出来ると思う。
- 576 名前:573 mailto:sage [2014/05/28(水) 13:36:48.07 ID:???]
- >>574-575
ありがとうございます。この方法ですが、 他のコントローラーと共存させたい場合はどうなるのでしょうか? /contacts/ お問い合せ用のコントローラー /faqs/ FAQ用のコントローラー などがサイトに存在する場合、おかしくなるような気が・・。 そういう場合は、固定のコントローラーを ルーティングに書いていけばいいんですかね? Router::routes(array('/contacts/:action'), array('controller' => 'contacts'));
- 577 名前:nobodyさん mailto:sage [2014/05/28(水) 13:55:25.16 ID:???]
- 問題ない。
ルーティングは単純な正規表現を先頭からマッチさせていくだけ。 で、最後の最後に通常のマッチングがコアの方に用意されている。
- 578 名前:nobodyさん mailto:sage [2014/05/28(水) 13:56:01.83 ID:???]
- あ、問題あるわ。すまんw
- 579 名前:nobodyさん mailto:sage [2014/05/28(水) 13:56:49.69 ID:???]
- >そういう場合は、固定のコントローラーを
>ルーティングに書いていけばいいんですかね? >Router::routes(array('/contacts/:action'), array('controller' => 'contacts')); そうですね。
- 580 名前:573 mailto:sage [2014/05/28(水) 15:29:39.46 ID:???]
- >>579
ということは、固定のコントローラーは全てルーティングに書く必要があるんですね。 そうなるとあまり利便性が良くないですね。
- 581 名前:nobodyさん mailto:sage [2014/05/28(水) 17:12:42.77 ID:???]
- TreeBehaviorのleftとrightってなんなん…これ見ると存在しないid指定してるみたいでわけが分かんないよ…
book.cakephp.org/2.0/en/core-libraries/behaviors/tree.html
- 582 名前:nobodyさん mailto:sage [2014/05/28(水) 20:12:28.98 ID:???]
- >>580
カテゴリ名を自由にするってことは、特定の文字を禁止にするんだろうから、 それを表現できるパターンを第3パラメータに書けば良いと思うよ。 たとえば ["member", "user"] というコントローラを作るんなら $route = '/:controller/:action/*'; $default = array(); $options = array('controller' => '(member|user)'); Router::connect(compact('route', 'default', 'options')); あと、アクションを設定しない場合に index を適用させるなら $route = '/:controller'; $default = array('action' => 'index'); Router::connect(compact('route', 'default')); を最初に加えておく。 あとすまん、 上で Router::routes() っていうのは Router::connect() の間違いだった。すまん。
- 583 名前:nobodyさん mailto:sage [2014/05/28(水) 20:13:54.99 ID:???]
- >>581
lft, rght はIDじゃないよ。 TreeBehavior のアルゴリズムを理解するのにとっておきの記事 blog.xao.jp/blog/cakephp/understanding-of-nested-sets-model-for-treebehavior-of-cakeph/
- 584 名前:573 mailto:sage [2014/05/28(水) 20:20:05.04 ID:???]
- >>582
ありがとうございます。色々工夫してやってみます。
- 585 名前:nobodyさん mailto:sage [2014/05/28(水) 22:03:01.32 ID:???]
- >>583
ありがとうマジで助かった!
- 586 名前:nobodyさん mailto:sage [2014/05/29(木) 01:00:35.02 ID:???]
- RailsとCakeでMVCを覚えたせいで見事に騙され、モデルはテーブルに紐付くもんと思ってたわ
テーブル関係ないビジネスロジックをどこに書くか迷って、コンポーネントに書いてたけど モデルに書いた方がいいんだろうか?
- 587 名前:nobodyさん mailto:sage [2014/05/29(木) 01:27:10.16 ID:???]
- >>586
ビジネスロジックをモデルに書くのは常識だ。 コンポーネントに書いたほうが良いなんて聞いたこと無い。 Rails も Cake もその点においては何も騙してねーと思うよ?
- 588 名前:nobodyさん mailto:sage [2014/05/29(木) 08:11:31.86 ID:???]
- テーブルをまたがる共通処理や、似て非なるテーブルに同じ処理をしたい場合に、ロジックを置く場所がないて話だと思うけど。
そういう場合にRailsの1モデル-1テーブル形式は破綻してるのは確か。
- 589 名前:nobodyさん mailto:sage [2014/05/29(木) 08:25:24.09 ID:???]
- 「具体的に言うと、モデルはデータベースのテーブルを表しますが」
book.cakephp.org/2.0/ja/models.html とあるせいで、モデル=テーブルに紐付く(原則として)と思ってたよ 市販の解説書も同じような感じで書いてる
- 590 名前:nobodyさん mailto:sage [2014/05/29(木) 08:44:24.60 ID:???]
- >>587
モデルの中で他のモデルをClassRegistry::initとかやりたくないんだよ コントローラに書きたくなければコンポーネントになる
- 591 名前:nobodyさん [2014/05/29(木) 10:03:02.00 ID:veg5U4SW]
- じゃあLibに作れよ
Modelじゃだめって理由でComponentに置く発想がおかしい
- 592 名前:nobodyさん mailto:sage [2014/05/29(木) 10:04:39.91 ID:???]
- は?LibよりComponentの方が使いやすいじゃん
Controllerの冒頭で配列に入れるだけで$thisで使えるんだから
- 593 名前:nobodyさん mailto:sage [2014/05/29(木) 10:18:58.89 ID:???]
- RailsにしてもCakeにしてもActive RecordないしTable Data Gatewayパターンを利用するクラスをModelと命名して
データベーステーブルと(さらにはコントローラとも)1対1対応しなきゃいけないように見えるから勘違いしやすいんだよな Railsは1つのモデルに関するロジックは"モデル"クラスに書けるけど Table Data GatewayのCakeはこれすらコントローラやヘルパーに溢れ出やすい印象 複数"モデル"が絡むときに簡易サービス層として利用されやすいのがコンポーネントなのかな コントローラから呼びやすいしファットコントローラの一番楽な回避策だろうし 初心者でも(本来の広い意味での)モデルの中にサービス層を作りやすい実装や解説にしておいてくれるとありがたいんだけど
- 594 名前:nobodyさん [2014/05/29(木) 10:27:52.09 ID:veg5U4SW]
- >>592
なんだその理由ww
- 595 名前:nobodyさん mailto:sage [2014/05/29(木) 11:21:59.06 ID:???]
- >>594
何がおかしいんだ?
- 596 名前:nobodyさん [2014/05/29(木) 11:35:25.87 ID:Kdl2SKiZ]
- >>588
>似て非なるテーブルに同じ処理をしたい場合 これはビヘイビアがいい気がする。
- 597 名前:nobodyさん mailto:sage [2014/05/29(木) 13:26:17.97 ID:???]
- 前もこの話題出たよな
結論は出なかった
- 598 名前:nobodyさん mailto:sage [2014/05/29(木) 13:48:42.54 ID:???]
- 作るものの規模とかで最適な構成は変わるしね。
>>593 のいうサービス層が必要になる規模は、CakePHPではちょっと対象外なんじゃないかと思ってる。 CakePHPの中の人がどう思って作ってるかはしらんけど。
- 599 名前:nobodyさん mailto:sage [2014/05/29(木) 15:11:21.10 ID:???]
- 複数モデルにまたがる処理をコンポーネントに書いている人は
$useTable = false の別のモデルを作った方がずっと楽だと思うんだが。 コントローラから直接参照できる点は一緒。 データのセット、バリデーション、フォーム値の復元。 使うモデルを $hasOne とか入れとけば ClassRegisry::init も呼ぶ必要ない。
- 600 名前:nobodyさん mailto:sage [2014/05/29(木) 15:24:59.72 ID:???]
- 俺はコンポーネントでやる方が楽だけどな
- 601 名前:nobodyさん mailto:sage [2014/05/29(木) 15:34:31.80 ID:???]
- おれも >>599 と同じだな。
Modelの下にサブディレクトリ切ってAppでパス通すのもありだと思う。 Lib は他で作ったライブラリを置く場所にしてる。 コンポーネントはコントローラの処理を助けることが限定されている場合しか書く意味ない。 もちろん、そういうロジックだけならコンポーネントはすれば良い。
- 602 名前:nobodyさん mailto:sage [2014/05/29(木) 16:13:20.58 ID:???]
- 複数ページにまつわる処理といえば、削除はどうしてる?
会員制サイトだと、以下のような構成がよくあるが、 会員 └日記 └お気に入り └掲示板の作成や投稿 会員を削除すると、その下の投稿内容も削除しないとおかしい(と俺は思う) だから俺は、管理画面で会員を削除したら、user_idがあるモデルは全て削除している。 削除はコントローラーに書いてる。
- 603 名前:nobodyさん mailto:sage [2014/05/29(木) 16:24:33.64 ID:???]
- >>602
会員モデルの削除を呼んだら消えるようにする
- 604 名前:nobodyさん mailto:sage [2014/05/29(木) 16:37:36.60 ID:???]
- >>603
hasManyでdependentをtrueだな。 俺も基本はそうしてるんだけど、>>602のに「画像」がある場合は困る。 各テーブルを参照して画像情報を取得し、削除していく必要がある。
- 605 名前:nobodyさん mailto:sage [2014/05/29(木) 16:50:52.43 ID:???]
- beforeDelete,afterDeleteでいいんじゃない
- 606 名前:nobodyさん mailto:sage [2014/05/29(木) 18:18:39.64 ID:???]
- そうすると、Userモデル内で他のモデルも呼ぶことになるぞ?
- 607 名前:nobodyさん mailto:sage [2014/05/29(木) 18:23:19.16 ID:???]
- >>606
画像に関して言ったんだけど dependentで消せないものに関して、Userモデル内から他のモデル呼んでも問題ないと思うけどな
- 608 名前:nobodyさん mailto:sage [2014/05/29(木) 20:03:02.45 ID:???]
- deleteAll のコールバックって無いんだよね?
あれば Image モデルの afterDelete に アセットを削除する処理を書いておけば良いのだろうけど。 saveMany や saveAll はコールバック効くのに deleteAll は効かないってのもおかしな設計ではあるな。
- 609 名前:nobodyさん mailto:sage [2014/05/29(木) 23:57:26.91 ID:???]
- deleteAll はコールバックあるよ。
ないのは updateAll
- 610 名前:nobodyさん mailto:sage [2014/05/30(金) 01:36:47.29 ID:???]
- >>609
あ、そうなのか! deleteAll の第3パラメータを true にするんだな。 今初めて気づいたわ。 じゃぁ、アセットの削除をそこに書けば良いわけか。
- 611 名前:nobodyさん mailto:sage [2014/05/30(金) 10:22:00.45 ID:???]
- つまり、どういう設計になるの?
- 612 名前:nobodyさん mailto:sage [2014/05/31(土) 17:06:44.83 ID:???]
- gitでcakephp管理する時、丸ごと全ファイルを管理するの?
それともビヘイビアとかプラグインとかだけ? 教えてください。お願いします!
- 613 名前:nobodyさん mailto:sage [2014/05/31(土) 18:14:11.40 ID:???]
- 全部
- 614 名前:nobodyさん mailto:sage [2014/05/31(土) 18:28:27.72 ID:???]
- cakephpってまだcomposerに対応しきれてない?
cakephp2でcakephp/appみたいなの探してるんだけどないかな?
- 615 名前:nobodyさん mailto:sage [2014/05/31(土) 18:39:11.86 ID:???]
- >>614
composer 使ってるけど、対応しきれてないと思ったのはどの辺り?
- 616 名前:nobodyさん mailto:sage [2014/05/31(土) 18:49:51.57 ID:???]
- >>615
bakeでプロジェクト作らないといけないのに ハードコーディングを直さなきゃいけないところとかかな
- 617 名前:nobodyさん mailto:sage [2014/05/31(土) 19:51:01.39 ID:???]
- それは composer というか bake project の仕様だなー。
include_path 通しておけばハードコーディングされなくなるけど。
- 618 名前:nobodyさん mailto:sage [2014/05/31(土) 20:57:15.14 ID:???]
- >>613
ありがとうございます!
- 619 名前:nobodyさん mailto:sage [2014/05/31(土) 23:23:49.38 ID:???]
- 今日俺がセルフHABTM方式というのを発明したんだが
何のことだかわかる?正式な名前とかある?
- 620 名前:nobodyさん mailto:sage [2014/06/01(日) 12:20:08.01 ID:???]
- そういうプラグインがあった気がする
- 621 名前:nobodyさん mailto:sage [2014/06/02(月) 00:43:40.92 ID:???]
- >>619
class Entity extends Model { public $hasAndBelongsToMany = array( 'RelatedEntity' => array( 'className' => 'Entity', 'foreignKey' => 'relational_id', ), ); } こういうこと?
- 622 名前:nobodyさん [2014/06/05(木) 11:57:49.53 ID:+YUe8hGX]
- メール送信するコマンド作って実行したら
「コマンド ラインが長すぎます」 というエラーが出るのですが、何かわかる方いらっしゃいますか? 環境は以下の通りです。 Windows 7 CakePHP 2.3.10 PHP 5.3.5 ファイル:app/Console/Command/ApprovalShell <?php App::uses('CakeEmail', 'Network/Email'); class ApprovalShell extends AppShell { public function main() { $Email = new CakeEmail(); $Email->config('default'); $Email->from(array('hogehoge@aaaaaaa.jp' => 'ほげほげ')); $Email->to('hogehoge@aaaaaaa.jp'); $Email->subject('お願い'); $Email->send(); } }
- 623 名前:nobodyさん mailto:sage [2014/06/05(木) 14:05:40.48 ID:???]
- >>622
Windowsで開発するのやめれたらいいと思うよ。 よく知らんけど、Cakeのエラーメッセージは英語。 てことは、おそらくコマンドプロンプトか、代わりに使ってるターミナル系アプリの出してるエラー。 エラーメッセージから、cakeコマンドへのファイルパスや引数も含め、 実行しようとしたコマンドの文字数が多すぎた。 てことが予想出来る。
- 624 名前:nobodyさん [2014/06/05(木) 16:25:42.75 ID:+YUe8hGX]
- >>623
ありがとうございます。 おっしゃるとおりかもしれません。
- 625 名前:nobodyさん mailto:sage [2014/06/05(木) 19:12:08.87 ID:???]
- 自分はローカル用のアプリをCakePHPで作ってコマンドライン多用してるけど
「コマンド ラインが長すぎます」 なんてエラーは出たこと無いな。 原文はなんて書いてんの?
- 626 名前:nobodyさん mailto:sage [2014/06/05(木) 19:12:52.47 ID:???]
- あ、もちろん Windows のクライアントね。
- 627 名前:nobodyさん mailto:sage [2014/06/05(木) 20:29:33.26 ID:???]
- みんなwindowsじゃないん?
- 628 名前:nobodyさん mailto:sage [2014/06/05(木) 22:14:09.51 ID:???]
- 本番機はレンタルサーバでlinux系だけど社内にあるマシンは全部windowsなんで
普段はwindowsで開発、最終的なテストだけ本番機で行っているわ PHPはわりと環境依存大きいけどcake使ってると依存度がかなり軽減されると思う
- 629 名前:nobodyさん mailto:sage [2014/06/05(木) 22:23:36.19 ID:???]
- 俺はVM立てるな
その方がお手軽だし
|

|