X



【PHP】フレームワーク CakePHP 19ホール目【v3.3】 [無断転載禁止]©2ch.net
0001nobodyさん垢版2016/12/24(土) 11:50:31.88ID:???
CakePHPは、Ruby on Railsの概念の多くを取り入れた、高速開発とPHPの機動性を兼ね備えたフレームワーク
質問するときはCakePHPのバージョンを書きましょう

※他フレームワークとの比較等はスレ違いです

■本家
https://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
github - cakephp
https://github.com/cakephp
the Bakery
http://bakery.cakephp.org/
cookbook(マニュアル)
[3.x] http://book.cakephp.org/3.0/ja/
[2.x] http://book.cakephp.org/2.0/ja/
[1.3] http://book.cakephp.org/1.3/ja/
Twitter
https://twitter.com/cakephp
Facebook
https://www.facebook.com/CakePHP

■日本語公式
https://cakephp.org/jp/

■前スレ
【PHP】フレームワーク CakePHP 17ホール目【v3α】
http://tamae.2ch.net/test/read.cgi/php/1406984261/
0287nobodyさん垢版2017/11/19(日) 11:44:09.23ID:???
反応する奴もウザい。
スルーしときゃ良いのに
0290nobodyさん垢版2017/11/26(日) 17:25:12.89ID:???
>>273
さらに今更だけど、modelが配列からオブジェクトになったから、formで
postされたmultipleなchekboxの中身がそのままmodelに渡すと空になる
ということでは?
0291nobodyさん垢版2017/11/26(日) 22:05:48.45ID:???
>>290
あー、確かに
今みたら、俺のコードだと配列に落としてむりくり表示してるわ
そーゆうやっつけ仕事はほめられたもんじゃないな
もっと便利の良い方法があるかもしれんね
ちとドキュメント読み直してみるか...
0292nobodyさん垢版2017/11/26(日) 22:25:45.26ID:???
あ、表示は[戻る]リンクの時ね
Modelにも配列でむりくり渡してるから同じ
事だけど
0293nobodyさん垢版2017/11/28(火) 21:59:19.69ID:/MGz0p3z
以下のような内容のデータをfind関数で取得したいんですが
どのように書けばいいですか?(直接SQLを実行する方式ではなく
クエリビルダで取る方法を教えてください)

select * from (
select * from TableA
)

※クエリ自体は無駄な部分を排除してシンプルにしているのでこのようになっております
実際に使用するときはこちらの形を応用して使用する予定です
0294nobodyさん垢版2017/11/30(木) 18:51:46.91ID:???
cake2で、PHP7.1.12の環境でI18n絡みのエラーが出る人います?
サーバ起動後、初回のアクセスでのみ発生するというわけのわからない状況、
うちだけでしょうか?
0295nobodyさん垢版2017/11/30(木) 18:54:56.08ID:???
もしも発生したら、opcache無効にしてみてください。
0296nobodyさん垢版2017/12/05(火) 17:01:11.63ID:Ex5yXPl9
https://mallento.com

こういうの作るのにどんくらい時間かかるんや
0299nobodyさん垢版2017/12/07(木) 00:57:09.21ID:???
>>293
サブクエリー内外で カラムが「*」の上、WHEREもJOINも無い
エスパー推測で以下のよーなSQLを使いたい、と勝手に解釈する

SELECT col1,col2 FROM
(SELECT col1,col2,col3 FROM TableA WHERE col1=5);

これと似た構造をCakePHP3のクエリビルダで書けるには書けるが、
「遅延実行」という仕組みがある為、生成されるSQLは大体こうなる

SELECT col1,col2 FROM TableA WHERE col1=5;

あと、MySQLとMariaDBでは1回のSQLで使えるインデックスは1つだから
サブクエリーを多用すると遅くなる
メンテナンス性が高まる、とかいうメリットを考えてるかもしれんが、
速度を改善したくなったり、見やすいコードを書きたくなったりする時期が来た頃には手遅れやぞ?
0301nobodyさん垢版2017/12/07(木) 11:10:22.61ID:???
何でもかんでも自動化しすぎた弊害やな
ひどすぎ
0302nobodyさん垢版2017/12/10(日) 01:03:05.30ID:GTT9hkGC
>>299
クエリが変わってるんですけど・・・
あとたったこれだけのサブクエリでレスポンスが遅くなるとは思えないんですけど・・・
0303nobodyさん垢版2017/12/10(日) 01:41:05.50ID:???
そこまで言うやつがなんでそんな質問した?
0304nobodyさん垢版2017/12/10(日) 11:28:32.59ID:???
>>302
「遅延実行の仕組みで」って書いてあるのは無視か?

SQLが短いのは、クエリビルダ使用前と使用後の違いを目立たせるため
実務なら普通に1行で書く
$hoge=$this->TableAs->find()->select(['col1','col2'])->where(['col1'=>5]);
(TableAがTableAs になってる、とか言い出すアホはいないと信じたい)

で、2重構造にするなら思いつくだけでも3つ以上ある
1 VIEW を使う
2 Modelにサブクエリ風のfunction書く
3 ModelにbyHoge(Query,$options=[])を用意してControllerからfindbyhogeで呼ぶ
4 Cpntroller内でクエリビルダを2回使う
TableAが定義されてないのに、これ全部例示する気にはならんわ
0307nobodyさん垢版2017/12/10(日) 15:30:49.58ID:???
35で指摘した本人だけど、AppControllerのbeforeRenderから
$this->set('_serialize', true);
を削除する対応よりは、
_serialize変数が宣言されていなければ
$this->set('_serialize', []);
を設定するという対応のほうが良いと思うんだが。

RequestHandlerはviewの切り替え以外でも使われるわけで、RequestHandlerを
使うなという対応よりは、使われる前提での対応のほうが適切かと思う。
というか$this->set('_serialize', true)はクソ仕様。

public function beforeRender(Event $event)
{
$return = parent::beforeRender($event);
if (!array_key_exists('_serialize', $this->viewVars) &&
in_array($this->response->type(), ['application/json', 'application/xml'])
) {
$this->set('_serialize', []);
}
return $return;
}
0308nobodyさん垢版2017/12/11(月) 20:38:38.48ID:xIATB1iO
>>304
ありがとうございます
4番ってどうやるのか教えていただけると助かります
0310nobodyさん垢版2017/12/13(水) 22:58:13.63ID:???
バージョン1.3です
ページネーションのメタタグ作りたいんだけど、
ページネーションヘルパーから次のページのURLを絶対パスで引数付きで取得する方法ってありませんか?

コントローラーでベタ書きして渡せば出来ないことはないんだけど、スマートな書き方ってありませんか?
0311nobodyさん垢版2017/12/14(木) 02:40:39.11ID:???
>>308
よりによってそれかよ
まあ、需要があるなら書くが・・・
1つめのクエリー
$hoge=$this->TableAs->find()->select(['col1','col2','col3'])->where(['col1'=>5]);
2つめのクエリー
$fuge=$hoge->select(['col1','col2']);

controller内でデータとして使うときは、
全件取得:$koge=$fuge->all();
最初の一件だけ取得:$koge=$fuge->first();
で実体化する
あとは、debug($koge);
で中身を表示・確認しながら好きなように使う
それと、 debug($fuge);でどんなクエリーが出来るてるかみたほうが良い
0312nobodyさん垢版2017/12/15(金) 00:53:30.90ID:???
何だかんだでアドベントカレンダー全部埋まってるよね
0313nobodyさん垢版2017/12/15(金) 13:08:41.92ID:8lbMqtX+
>>311
ありがとうございます
0314nobodyさん垢版2017/12/15(金) 15:50:39.75ID:uvNq4kU6
あのPewDiePieがついに、初心YouTuber向けに「視聴回数」「チャンネル登録者数」を増やすコツを公開!
http://naototube.com/2017/08/14/for-new-youtubers/
27歳で年収8億円 女性ユーチューバー「リリー・シン」の生き方
https://headlines.yahoo.co.jp/article?a=20170802-00017174-forbes-bus_all
1年で何十億円も稼ぐ高収入ユーチューバー世界ランキングトップ10
https://gigazine.net/news/20151016-highest-paid-youtuber-2015/
雑学ツイートで年収6000万円の23歳 UberFactsは何をしたのか
https://weekly.ascii.jp/elem/000/000/304/304724/
おもちゃのレビューで年間12億円! 今、話題のYouTuberは6歳の男の子
https://www.businessinsider.jp/post-108355
彼女はいかにして750万人のファンがいるYouTubeスターとなったのか?
https://www.businessinsider.jp/post-242
20歳のYouTubeスターが購入、約8億円の豪邸を拝見
https://www.businessinsider.jp/post-107308#cxrecs_s
23歳のマインクラフト実況YouTuberが5.4億円の大豪邸を購入!
http://netgeek.biz/archives/52494
24歳美人ユーチューバーZoellaが1億円豪邸を購入
http://media.yucasee.jp/posts/index/14594
スケールが違う!海外実験系youtuberまとめ
http://tokyohitori.hatenablog.com/entry/2016/10/28/225022
YouTubeでサラリーマンはどこまで稼げるか?
http://president.jp/articles/-/20593
0315nobodyさん垢版2017/12/18(月) 20:48:00.40ID:/6ufxAgH
テーブルAとテーブルBは互いにhoge_idというカラムを持っていて
hasManyで紐付けたいんですが
hoge_idはどちらのテーブルでも主キーではありません
この場合アソシエーションではどのようにくっつければいいのでしょうか?
0320nobodyさん垢版2017/12/30(土) 03:27:06.07ID:???
暇つぶしでリリースしているのか?
0321nobodyさん垢版2017/12/30(土) 12:12:27.48ID:YhlYw6jg
誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。

グーグル検索⇒『半藤のブブイウイウレレ』

AJ01PNMU9X
0322nobodyさん垢版2018/01/12(金) 12:23:55.23ID:sIw4I1wY
2系を使用しています。コントローラー内でのビューの取得について相談です。
コントローラーで
function test() {
 $this->render('test');
 $body = $this->response->body();
}

とすれば取得できるのですが、
取得した文字列の一部を加工して出力しようと、

echo str_replace('タイトル', 'TITLE', $body);

しても二重に出力されてしまいます。
加工後のデータだけ出力するにはどうすれば良いのでしょうか?
0323nobodyさん垢版2018/01/12(金) 13:41:33.42ID:???
renderはデフォルトで出力もする
$this->autoRenderあたりでオフれるはず
0324nobodyさん垢版2018/01/16(火) 16:02:56.64ID:F9OHrtI3
すみません
サーバーに全ファイルをffftpでアップするとき
vendorファイルの中が多すぎて止まってしまうんですが
どうすれば良いでしょうか?
0325nobodyさん垢版2018/01/16(火) 19:40:29.05ID:7wPVJOiZ
いまどきFTPなんて欠陥プロトコルとそのクライアント使うなってことです
0326nobodyさん垢版2018/01/16(火) 22:25:46.91ID:???
まあそれしか使わせて貰えないサーバーもあるだろよ
無料レンサバとかさ
0328nobodyさん垢版2018/01/18(木) 18:57:22.14ID:???
>>324
Oven使ってインストールするってのはどう?
cookbookにも掲載されている方法です
0330nobodyさん垢版2018/01/18(木) 22:31:20.43ID:???
>>327
telnetすら使えない場合解凍のスクリプトがいるけどな

そのライブラリもなければお手上げ
0333nobodyさん垢版2018/01/19(金) 16:35:06.99ID:DjA+jHZq
.poファイルを作って、/app/Local/eng/LC_MESSAGES
に配置すれば多言語化(翻訳)が可能になります。

その理解が最低限あるとして相談です。
フォームヘルパーで選択肢を作るとき
$this->Form->input('hobby', array('options' => array('cooking', 'sports')));

な感じで書くと思います。
この選択肢(option)の部分をpoファイルに記述しても翻訳されません。
別に配列を用意して切り替えるしか無いのでしょうか?
0334nobodyさん垢版2018/01/20(土) 22:39:08.89ID:???
>>333
$this->Form->input('hobby', array('options' => array(__('cooking'), __('sports'))));
は試したか?
0336nobodyさん垢版2018/01/23(火) 13:29:17.81ID:???
>>334
返事が遅くなってすみません。
それは試したのですが、配列すべてに__()を付けるのもどうかと思いまして・・・。
そういう方法しかないと言うなら納得します。もし他に方法があれば教えてください。
0337nobodyさん垢版2018/01/24(水) 23:46:46.33ID:???
>>336
foreachでムリクリ「__()」くっつける方法とか、
対訳テーブルをdb上に作っといて「__d('cooking','料理') , __d('sports','スポーツ')」って出力するとか
いまいちパッとしない
後者についてはdb使うから、foreachだけより遅くなるかも
とりあえず前者だけ書いとく
ふつうはTemplateに直書きせずに
Controller側
$ops=array();
$ops[]='cooking';
$ops[]='sports';
$this->set('ops',$ops);
Template側
echo $this->Form->input('hobby',$opt);
とかやるでしょ? そのときにこーゆー無茶をやる
0338nobodyさん垢版2018/01/24(水) 23:50:17.60ID:???
>>336
無茶の続き
Controller側
$ops=array();
$ops[]='cooking';
$ops[]='sports'; //ここまで上と同じ

$op1=array(); //新しい配列
foreach($ops as $key=>$op){ //$key に添え字、$opに内容が入る
$op1[$key]='__('.$op.')'; //文字列連結
}
$this->set('ops',$op1);

Template側(上と同じ)
echo $this->Form->input('hobby',$opt);

foreachは、配列が大きいと実行時負荷が半端じゃ無いけど、10ヶ前後ならナシでもないはず。
0339nobodyさん垢版2018/01/25(木) 00:07:55.21ID:???
>>336
文字列連結はこうかもしれん
$op1[$key]='__('.'''..$op..'''.')';
シングルクオーテーションの扱いも面倒だな
もっとスマートなやり方が考案できたら良いんだが、俺にはこれが精一杯
あとはqiita辺りをROMるほうがが吉かと
0340nobodyさん垢版2018/01/25(木) 00:11:36.34ID:???
>>339
あああ、また間違えた、書くならこっちだ
$op1[$key]='__('.'''.$op.'''.')';
0341nobodyさん垢版2018/01/28(日) 21:58:21.01ID:???
$keyじゃないな。たぶんこれでいけると思う
Controller側
$ops=array();

//ここからoption内容作成
$ops[]='cooking';
$ops[]='sports';
//ここまでoption内容作成

$op1=array(); //新しい配列
foreach($ops as $op){
$op1[$op]='__('.'''.$op.'''.')'; //文字列連結
}
$this->set('ops',$op1);

Template側
echo $this->Form->input('hobby',$opt);

$optの内容:['cooking'=>__('cooking'),'sports'=>__('sports')]
0342nobodyさん垢版2018/01/30(火) 13:52:38.68ID:???
やりすぎ防犯パトロール、特定人物を尾行監視 2009年3月19日19時7分配信 ツカサネット新聞
http://headlines.yahoo.co.jp/hl?a=20090319-00000026-tsuka-soci

この記事で問題になった通称やりすぎ防パトは、創価学会と警察署が引き起こしていたようです

掻い摘んで説明すると

・創価学会は、町内会や老人会、PTA、商店会等の住民組織に関し、学会員が役員になるよう積極的に働きかける運動を
 90年代末から開始し、結果、多くの住民組織で役員が学会員という状況が生まれた

・防犯パトロールの担い手は地域の住民と住民組織で、防犯活動に関する会議や協議会には、住民組織の代表に役員が出席する為
 防犯活動や防パトに、創価学会が間接的に影響力を行使可能となった

・防パトは住民が行う為、住民が不審者や要注意人物にでっち上げられるトラブルが起きていたが
 創価学会はその緩さに目をつけ、住民組織を握っている状況を利用し、嫌がらせ対象者を不審者や要注意人物にでっち上げ
 防パトに尾行や監視、付き纏いをさせるようになった

・防パトは地元警察署との緊密な連携により行われる為、創価学会は警察署幹部を懐柔して取り込んでしまい
 不審者にでっち上げた住民への嫌がらせに署幹部を経由して警察署を加担させるようになった

・主に当該警察署勤務と考えられる創価学会員警察官を動かし、恐らく非番の日に、職権自体ないにもかかわらず
 私服警官を偽装させて管轄内を歩いて回らせ、防犯協力をお願いしますと住民に協力を求めて回り
 防犯とは名ばかりの、単なる嫌がらせを住民らに行わせた(防犯協力と称し依頼して回っていた警察官らの正体は恐らく所轄勤務の学会員警察官)
 ※これに加えて防犯要員が同様のお願いをして回る

・こうして防犯パトロールを悪用し、住民を欺いて嫌がらせをさせつつ、創価学会自体も会員らを動員し、組織的な嫌がらせを連動して行った

つまり警察署に勤務する学会員警察官、警察署幹部、創価学会が通称やりすぎ防犯パトロールの黒幕

詳細は下記スレをご覧下さい
やりすぎ防犯パトロールは創価学会と警察署の仕業だった
https://rio2016.5ch.net/test/read.cgi/bouhan/1516500769/
0343nobodyさん垢版2018/02/04(日) 04:48:00.08ID:???
Cake2.10からPHPUnitの5が使えるようになったって話だけど
まともに動かないまま放置されてる
2系ももう終わりなんですかね
0345nobodyさん垢版2018/02/13(火) 12:34:52.11ID:???
>>344
バグフィックスしてくれるだけで十分だわ。当分使えるし
0346nobodyさん垢版2018/02/19(月) 21:42:55.00ID:???
☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
0347nobodyさん垢版2018/02/20(火) 02:02:52.52ID:???
CakeFest 2018 のチケットが販売中ですよ
今年は6月14日から17日まで、米テネシー州ナッシュビルで開催されます
https://cakefest.org/
0348nobodyさん垢版2018/02/27(火) 21:54:35.16ID:2S41k6T0
オフィスソフトしか使わない、webプログラミングの門外漢から質問です。お願いします。

CakePHP、あるいはLaravelという言語(この二つは厳密には言語ではなく、PHPという言語を
応用したプログラミングの仕組みをいうらしいですね)のいずれかについて、5から8人くらいの、
その能力を審査しなくてはいけなくなりました。

「本当に仕事としてそのプログラムを扱っていたことがあるかどうか、入門書読んで少し自分で
やってみたことがあるというレベルを超えているかどうか」
 ↑
こういう基準をちゃんとクリアしてるのかどうかを見極めたいです。
1週間3万円の作業料(時間をとっていただく分の報酬)で、何かの課題を出して提出してもらう
形にしたいのですが、何かいい、典型的なダミーシステムってないでしょうか?実際にネットにアップして
それを審査するのではなく、別の課の人のPCのxampp(社内のネット?)で実行してみて出来をみると
いう形式になります。

これまたど素人の上司は、「よくわからんから、ダミーショッピングサイトでいいんじゃね?」などと
言っていますが。。
0349nobodyさん垢版2018/02/27(火) 21:57:00.25ID:???

わかりにくい質問ですみません。
CakePHPかLaravelについて「その人が中級者以上かどうか」を審査するのに、
ちょうどいい課題のアイデアを教えてください、ということです。
一週間以内、3万円でやってもらう程度の課題です。
0350nobodyさん垢版2018/02/27(火) 22:47:30.08ID:???
>>349
今までに作ったものを見せろ、で良いと思う。
一週間三万円で頼んだところで、信じられるものが出てくるわけがない。
0351nobodyさん垢版2018/02/28(水) 00:13:00.16ID:???
>>348
どんな要員が欲しいのか書いてないので解らんが、一週間なら
管理者権限、一般権限を分けたアンケートフォームあたりでお茶を濁すぐらい。それでもちょいと仕様説明は長くなる
以下、「ぼくがかんがえたいっしゅうかんでつくるぴいえっちぴい」の仕様
A 管理者権限と一般権限を分け、ログイン後は別の画面を表示する
B 管理権限ユーザー: アンケート内容を決めてDBに保存、 アンケート集計結果を閲覧
C 一般権限ユーザー:自分のユーザー名でログインしてアンケートに答え、結果をDBに保存
D アンケートは、テキストボックス1つ、チェックボックス1組、ラジオボタン1組、ドロップダウンリスト1個に納めるものとする
E 「アンケート内容」は「4月1日から14日」「4月15日から28日」等の期間をつけ、期間毎に別の質問が出来るものとする
====
1管理権限ユーザー
(1)ユーザー管理
管理権限ユーザーの追加、変更、削除
一般権限ユーザーの追加、変更、削除
(2)アンケート内容入力
アンケートのタイトル
アンケートの期間
テキストボックスで答えて欲しい質問
チェックボックスで答えて欲しい質問と選択肢
ラジオボタンでで答えて欲しい質問と選択肢
ドロップダウンリストで答えて欲しい質問と選択肢
(3)アンケート結果閲覧
各アンケートに答えた人数
各アンケートの集計結果(単純な表組ぐらい)
個々のアンケート内容閲覧(編集禁止)
2一般権限ユーザー
(1)ユーザー管理
自分のパスワード変更
(2)アンケート内容入力
閲覧日時に合ったアンケート質問画面が表示され、回答を入力
0352351垢版2018/02/28(水) 00:53:05.64ID:???
読んだら解るだろうけど、これで測れるのは、「作業者としての技量」
だけなので、DB設計センスやら仕様を読みとる能力やらは全く判明しない。
「本当に仕事としてそのプログラムを扱っていたことがあるか」
が知りたいなら、>>350 が有用

多分、一週間で能力を測れと「上の上の方の人」に言われたんだろうが、
測る側も 、フレームワークの違い、権限分離の方法の違い程度の知識と
Apache,nginx,postfixを入れた仮想マシンを提供する人の用意ぐらいは要るとおもうぞ
0353351垢版2018/02/28(水) 01:11:56.55ID:???
もう一つ忘れてた
PHPのバージョン選びも注意な
PHP5.4は、CentOS7.xかRedHat7.xを使うなら、2024年あたりまでセキュリティーパッチは出る
PHP5.5とPHP5.6はお勧めしない
このあたりはQIITAの人がまとめてくれているので、この人に感謝しながら読むと良い
ttps://qiita.com/bezeklik/items/72d1ff8393f66673e2bc
0354nobodyさん垢版2018/02/28(水) 09:10:14.32ID:???
そこまでやるならFWのバージョンを指定しないと意味がない
0355nobodyさん垢版2018/02/28(水) 11:38:00.88ID:???
何人をどのくらいの期間雇いたいの?
0356nobodyさん垢版2018/02/28(水) 13:05:35.63ID:???
外注業者を選定したくてやってるんなら
一週間3万円のフィルターでまともなところは全部落ちる
0358351垢版2018/03/01(木) 00:44:58.72ID:???
>>357
成果無しでも1週間で3万円、何が寄って来るやら…
0359351垢版2018/03/01(木) 01:58:20.64ID:???
>>354
そうなるわなw 無意識にPHP7.xとCakePHP3.5.xを想定してたわ
Larabelはチュートリアルビデオさえ見てない
Cake1.3をCake3.5へ移植中でお腹いっぱい
Larabelなら5.6とPHP7.xがよいのかな?

>>348 まだ見てるか? >>358 も俺だ(名前欄参照)
他でも情報集めてるんだろうが、上のほうの人に諦めていただくように
お願いするのが吉だと思うぞ?
FWが決まってない(&分かってない)のに人集め、とか冒険しすぎ
0360348垢版2018/03/01(木) 02:08:55.96ID:???
>>348です。
みなさま、お騒がせして申し訳ありませんでした。

最初、>>351さんを見てすごくいいと喜びましたが、つづくレス>>352-353
まったく何のことかわからず、>>350にするしかないと、今朝までにそう決意しました。
しかし、その後のレスを見ても、そもそも何をどう審査していいのかすらわからないのが
怖くなって、あれこれ悩みました。
結局、うちの上司に心を入れ替えてもらい、システム課長に対してこれまでの無礼を詫び
頭を下げてもらった結果、システム課のみなさんに審査全般おまかせできることになりました。

私は、355さんの受け売りで「そもそもFWのパージョンを指定しないと意味ないですよね」と言って
「お、きみ、詳しいんだね」とシステムの人に褒められたのだけがよかったです。

ありがとうございました。
0362nobodyさん垢版2018/03/01(木) 11:50:23.57ID:???
そうか?
技術者軽視の話にしか思えん。
0363351垢版2018/03/01(木) 23:14:37.95ID:???
>>360
おめでとう
これで「ちょっと判る奴」という烙印ゲットだw
そのような道標を置いた覚えは無いが、仲裁能力を磨いておくようにな
0364nobodyさん垢版2018/03/05(月) 11:47:21.95ID:oHpdlgGN
cake2系で、error.logにfavicon関係のログが定期的に記録されるのですが、
これってfaviconを指定しないと消えないんですかね?
faviconが設置しなくてもエラーにならない方法があれば教えてください
0366nobodyさん垢版2018/03/05(月) 18:51:23.31ID:???
favicon設置するコストのが遥かに低いのに…
0367nobodyさん垢版2018/03/05(月) 19:24:53.07ID:???
作るのがめんどくさいなら、
ttp://antifavicon.com
とか使ってとりあえず置くでも良いと思うよ。
0368nobodyさん垢版2018/03/10(土) 02:01:54.46ID:???
ログイン画面すら表示に1秒くらいかかる
客のコードのせいかと思ってたら、Cake本家のページもそんなもんだな
0370nobodyさん垢版2018/03/10(土) 11:57:03.73ID:???
海外サーバってだけでも体感に影響するから、cakeが一概に遅いって訳じゃない
0371nobodyさん垢版2018/03/10(土) 14:01:32.00ID:???
debugがtrueになってるとかいうオチだけは勘弁
0372nobodyさん垢版2018/03/11(日) 18:41:20.06ID:???
ん、おまえらの環境は早いの?
それとも1秒は耐えられる速度ってこと?
debugは例外出た時にしかtrueにしねえな
0373nobodyさん垢版2018/03/11(日) 19:49:15.62ID:???
>>372
普通に速いぞ。
作りが悪いんじゃないか?
0374nobodyさん垢版2018/03/11(日) 19:52:27.23ID:???
人に聞くなら自分の環境書かなきゃな
0375nobodyさん垢版2018/03/11(日) 20:38:16.81ID:???
改善の余地は十分にあるってことか、さんくす
Cake3.5.5/PHP7.0/apache2.4/mysql5.7
レスポンスは開発環境のWindowsも本番用のAzureLinuxも大差無し
0376nobodyさん垢版2018/03/11(日) 23:44:19.13ID:???
1秒が耐えられないって普段どんだけ素早く動いて生活してるの
0377351垢版2018/03/12(月) 00:13:49.37ID:???
>>375
mysql系統だと、1つのSQLにつき1つのIndexしか使えない
処理が遅い時は、indexが上手く機能してない場合がある

処理が遅い所でdebugkitからSQLを拾って、処理時間が長いものを探す
で、そのSQLに対応したindexを作ってみると改善する
俺の環境では、このパターンが多い
ま、サブクエリが発生してたらクエリビルダーを書き直すという泥縄だが

環境はこんな感じ
CentOS7.1,Apache2.4,PHP7.2,mariadb10.0(innodb)
開発環境:Windows7 + VirtualBox5.1.5
本番環境:Amazon EC2
0378nobodyさん垢版2018/03/12(月) 00:32:02.96ID:???
>>376
開発中でログインユーザー1人だけなら、レスポンス1秒は長すぎる
その時点で、開発者が「1秒なら待てる」とか言い出したら問題有り
アクセス数の集中加減次第で、内部エラー(DBタイムアウト)になりかねん
0379351垢版2018/03/12(月) 00:33:29.78ID:???
>>377
書き忘れた CakePHP3.5.12
0381nobodyさん垢版2018/03/12(月) 15:45:33.78ID:???
4はいつ出てくるんだろう?
個人的には永久に出てきてほしくないけど。
0382nobodyさん垢版2018/03/12(月) 20:26:39.35ID:???
ところでなぜ日本だけCake人気あるのでしょう?日本製でもないのに
0383nobodyさん垢版2018/03/12(月) 20:54:44.44ID:TSwI/KsN
日本人は英語のドキュメント読めないから、いつまでも古い技術にこだわるため
0384nobodyさん垢版2018/03/12(月) 21:18:27.28ID:???
>>383
作り替えを極端に嫌うから、必然的にサポートが長いのを好むんじゃないかな?
俺のなかではcakeから乗り換えるならdjango一択。
0385nobodyさん垢版2018/03/12(月) 21:59:37.86ID:bfeo5mri
Cake3のValidationで質問です。

int型の項目にtextフォームからデータを登録したいのですが、「a」と入力した際に
「This field cannot be left empty」というメッセージが表示されます。
入力が無視されているようなのですが、この無視する挙動を無効にする方法はありますか?
下記のような実装なんですが、「a」と入力したら「Invalid Data'」と表示されることを期待してます。

CREATE TABLE `hoge` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`sort` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ;

public function validationDefault(Validator $validator)
{
$validator
->requirePresence('sort', false)
->notEmpty('sort')
->add('sort',[
'naturalNumber'=>[
'rule'=>['naturalNumber'],
'message'=>'Invalid Data',
]
]);

return $validator;
}
0386nobodyさん垢版2018/03/13(火) 01:16:28.99ID:???
>>385
第2引数「true」がぬけてるからでは?
->add('sort',[
'naturalNumber'=>[
'rule' => ['naturalNumber', true],
'message'=>'Invalid Data',
]
]
);
0387nobodyさん垢版2018/03/13(火) 09:27:35.84ID:???
>>384
日本社会は、前例主義だからなあ
実績のある〜〜というのが大好きだもんな
レスを投稿する


ニューススポーツなんでも実況