[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 02/18 06:00 / Filesize : 225 KB / Number-of Response : 899
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【PHP】フレームワーク CakePHP 16ホール目【v2.4】



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

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()っつうメソッドがあってだな






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<225KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef