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


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

【PHP】フレームワーク CakePHP 14ホール目【v2.1】



1 名前:nobodyさん [2012/05/01(火) 16:58:44.53 ID:fVBzm1/A]
CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです
CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう

※他フレームワークとの比較等はスレ違いです
テンプレは>>1-5くらい には無いかも

■本家
www.cakephp.org/
APIドキュメント
api.cakephp.org/
the Bakery
bakery.cakephp.org/
CakeQs
cakeqs.org/
CheatSheet (PDF)
cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf
github - cakephp
github.com/cakephp

■日本語公式
cakephp.jp/
フォーラム
cakephp.jp/modules/newbb/
cookbook(マニュアル)
book.cakephp.org/ja

前スレ
【PHP】フレームワーク CakePHP 13ホール目【v2.0】
kohada.2ch.net/test/read.cgi/php/1320768310/

64 名前:nobodyさん mailto:sage [2012/05/21(月) 21:42:06.73 ID:???]
ケースバイケースだな。
何度も使う場合は書くけど、そうでない場合はコントローラで済ます

65 名前:60 mailto:sage [2012/05/22(火) 01:03:15.16 ID:???]
>>64
ありがとう。

複雑なクエリや、他のコントローラーから呼ぶようなやつはファットモデルにするよ。
規約は守ってもフレームワークだからって型に縛られないようにするよ。

66 名前:nobodyさん mailto:sage [2012/05/22(火) 02:11:52.42 ID:???]
>>61
テーブルに変更が加えられたかどうかをチェックしてしまったらキャッシュしている意味がなくなるから原理的にそれは出来ないんじゃないかな
俺は手動で消してる

67 名前:nobodyさん mailto:sage [2012/05/22(火) 02:26:56.79 ID:???]
ランキングやトピックスは随時更新じゃなくて、一定期間で更新だよな
一定期間毎にキャッシュを作っていると思うけど、その形で良いと思う


68 名前:nobodyさん mailto:sage [2012/05/22(火) 05:21:12.26 ID:???]
>>66
手動でどうやって消してますか?
全部消せば簡単だけどそうすると今アクセス中の客のセッションデータが吹っ飛ぶ
更新したいキャッシュだけ消す簡単な方法あります?というかどのキャッシュを消せば良いのか

69 名前:nobodyさん mailto:sage [2012/05/22(火) 10:21:13.32 ID:???]
それはマニュアル見ろとしか言えないな

70 名前:nobodyさん [2012/05/22(火) 12:26:33.17 ID:mOE2ZVav]
フォームによってモデルの必須条件を適宜変えたいんだけど、どうしたらいいんだろう

71 名前:nobodyさん mailto:sage [2012/05/22(火) 12:58:54.36 ID:???]
>>70
2.2で ModelValidatorを使う
book.cakephp.org/2.0/en/models/data-validation.html

もしくはいくつかバリデーションルールを作っておいて、コントローラーでvalidateのフィールドを指定する
book.cakephp.org/2.0/en/models/data-validation/validating-data-from-the-controller.html

て感じかしらん

72 名前:68 mailto:sage [2012/05/22(火) 14:05:53.81 ID:???]
んー、なんか今Cakeのマニュアル見れないなあ
なんか見れるページと、見れないページがある、どうなってんだ
とりあえず助言ありがとう



73 名前:nobodyさん mailto:sage [2012/05/22(火) 14:21:04.35 ID:???]
しかもDB構造のキャッシュについては載ってなさそうだなあ
仕方ないソース見るか…

74 名前:nobodyさん mailto:sage [2012/05/23(水) 18:18:16.24 ID:???]
1.3で開発してるアプリケーションを2.xに変更しようと思ってるんだけど大変かな?
コントローラ20個、モデル15個ぐらいの規模なんだが
パッと手直しするだけで移行できる?

75 名前:nobodyさん mailto:sage [2012/05/23(水) 18:26:46.04 ID:???]
もう少し様子見た方が良いと思うけどな。今は情報少ないだろ
自分だけで使うなら別だが、仕事だと1.3で良いと思うよ

76 名前:nobodyさん mailto:sage [2012/05/23(水) 22:27:57.51 ID:???]
コントローラー3個のサイトでさえ移行めんどくさい
でも新規サイトは2.xで作ってるから古いサイトのメンテナンスするときに混乱する
でも移行したくない

77 名前:nobodyさん mailto:sage [2012/05/24(木) 17:42:05.60 ID:???]
2.1を使用中です。

例えば$tmp = "5,2,3,4,1"と言う並びを記憶した文字列があったとします。

それを$id_order = explode(',",$tmp);として、
$this->Hoge->find('all',array('conditions'=>array('id'=>$id_order)));
として読み出します。読み出し自体は5件、ちゃんと拾ってきます。

ただこの場合、そのままだとid順に並び変わってしまうんです。
(この場合だと 1 2 3 4 5 に並び変わってしまう)
そのまま5,2,3,4,1の順を保持するようには出来ないのでしょうか?
queryで id IN (5,4,3,2,1)も試してみたのですが、やはりID順で並び変わってしまいます。

Hogeそのものにorder用のフィールドを準備して並び替えれば当然出来るんですが・・・

今は配列を全部読んで新たに配列を作成するという力技でやっているのでうまい方法は無いかと思いまして・・

Cakephpとは関係ない様な気もしますが参考意見でもあれば宜しくお願いします。

78 名前:nobodyさん mailto:sage [2012/05/24(木) 18:35:37.61 ID:???]
>>77
SQLはorderを指定しないと読み出し順は保証されないよ
たまたま1,2,3,4,5になるかもしれないし、そうでないかもしれない。
だからちゃんとfindのオプションでorderを指定すべき

79 名前:nobodyさん mailto:sage [2012/05/25(金) 19:14:24.25 ID:???]
2.0で組んでます。
Componentから呼び出した、他のComponentのinitializeが、
実行されないんだけど、実行されるようにする方法はないですか?


80 名前:nobodyさん [2012/05/25(金) 19:20:46.92 ID:/BxfQcHO]
勉強しはじめの者です。

XAMPPを起動させて、webrootフォルダの中のindex.phpにログインは出来るし、
index.phpを他に移動させて前の場所のアドレスを入力すると見えなくなるのですが
localhost/cake/sample/index.php

webrootフォルダの中にindex.htmlやindex2.php等を作って、
localhost/cake/sample/index2.php をブラウザで表示させようとしても表示できません。

これはなぜなのでしょうか?教えていただけると助かります。

81 名前:nobodyさん mailto:sage [2012/05/25(金) 19:51:57.57 ID:???]
>>80
普通は表示できると思うんだけど。
Apacheのエラーログ見たら?

82 名前:80 mailto:sage [2012/05/26(土) 00:55:32.99 ID:???]
>>81

レスありがとうございます。
エラーログで分からなかったので、XMAPPもCAKEPHPもインストールし直したら解決しました。



83 名前:nobodyさん mailto:sage [2012/05/26(土) 13:28:16.83 ID:???]
>>70-71
これを1.3で実現したいんですけど、何か方法はありますか?

84 名前:nobodyさん mailto:sage [2012/05/26(土) 16:30:05.31 ID:???]
id以外のPrimaryKeyを指定できるのは、2系だけですか?

85 名前:nobodyさん mailto:sage [2012/05/26(土) 18:04:32.93 ID:???]
>>84
1系でも出来る

86 名前:nobodyさん mailto:sage [2012/05/27(日) 00:59:00.50 ID:???]
>>78
おっしゃるとおりです。

あれから調べた所、MySQLである限りはorder by fieldが使用できるので、
cakebaker.42dh.com/2008/06/10/order-by-field/
の形でやればいちいち取得後に並び替え処理しなくても
最初から指定の順で並び替えた状態で取得できそうです。

ありがとうございました。

87 名前:nobodyさん mailto:sage [2012/05/28(月) 15:42:04.62 ID:???]
JsonView だと Forbidden になる現象遭遇した人いませんか?
2.1 です。

88 名前:nobodyさん mailto:sage [2012/05/28(月) 21:49:33.64 ID:???]
Apache の MIME type が原因でした。

89 名前:nobodyさん mailto:sage [2012/05/30(水) 00:22:24.86 ID:???]
本を見て勉強中なのですが

<?=$form->create(null,array('type'=>'post','action'=>'.')) ?>

等のように、
<?=
から始まるコードがあります。これをこのまま本の通りに入力するとエラーになってしまうのですが

これは、
<?php echo
と同じ意味なのでしょうか?

「<?php echo 」と書くと長いから「<?=」と書いているけど、コードを書くときは「<?php echo」に直してね
っという事なのか
私の書き方や設定がおかしいから「<?=」でエラーが出るだけで、何かをすれば「<?=」でもエラーが出ないのか?

教えていただけると助かります。よろしくお願いします。

90 名前:nobodyさん mailto:sage [2012/05/30(水) 01:40:42.57 ID:???]
流れ関係ない質問ですが
マニュアルに書いてないことを知るには、ソースを読めですか?

91 名前:nobodyさん mailto:sage [2012/05/30(水) 02:22:35.21 ID:???]
>>89
cakeは関係ない。php自体のshort_open_tag設定

>>90
生ソースの前にAPI一覧を見るといいよ
こんなメソッドあったのか。なんてのも結構あるし。
それで使い方気になったらソース見ていく。って感じで俺はずいぶん勉強になったよ

92 名前:nobodyさん mailto:sage [2012/05/30(水) 14:54:21.85 ID:???]
バリデーションの切り替えの質問したものだけど、
$this->User->validates(array('fieldList' => array('email', 'password'))
こういう方法もあるんだね。
これでよかった。



93 名前:nobodyさん mailto:sage [2012/05/30(水) 15:08:29.89 ID:???]
ちなみに1.3で日本語のブックには載ってない方法だった

94 名前:nobodyさん mailto:sage [2012/06/01(金) 10:14:16.75 ID:???]
saveした際にvalidate errorだとviewのformに値が自動的に戻ります。
hasMany tableをsaveAllした際のvalidate errorだと、formに値が自動的に戻りません。

saveAllのvalidate errorの場合は手動でformに入力値を展開するものですか?
流儀があれば教えて頂きたいです。

95 名前:nobodyさん mailto:sage [2012/06/03(日) 01:26:40.50 ID:???]
bakeというものを使おうとしたのですが

コマンドプロンプトでパスを設定後、
cake bake でデータベース設定しようとすると
最後にエラーになってしまいます。

Look okay? (y/n)
[y] > y
Do you wish to add another database configuration?
[n] > n

Creating file c:\xampp\htdocs\cake\baking\myapp\config\database.php
Wrote `c:\xampp\htdocs\cake\baking\myapp\config\database.php`

どうしたら直るでしょうか?教えていただけると助かります。
よろしくお願いいたします。

96 名前:nobodyさん mailto:sage [2012/06/03(日) 02:03:55.13 ID:???]
>>95
エラーはどこ?

97 名前:nobodyさん mailto:sage [2012/06/03(日) 05:21:06.99 ID:???]
>>96
95の頭

98 名前:nobodyさん mailto:sage [2012/06/03(日) 13:48:18.75 ID:???]
あ?エラーが出てるならエラーメッセージを貼れつってんだよ

99 名前:95 mailto:sage [2012/06/03(日) 15:48:10.86 ID:???]
失礼しました。

Creating file c:\xampp\htdocs\cake\baking\myapp\config\database.php
Wrote `c:\xampp\htdocs\cake\baking\myapp\config\database.php`

ではなく

Fatal error: Class 'DATABASE_CONFIG' not found in C:\xampp\htdocs\cake\baking\ca
ke\console\libs\tasks\db_config.php on line 260

でした。

100 名前:nobodyさん mailto:sage [2012/06/03(日) 16:18:04.08 ID:???]
でーたべーすこんふぃぐがねえんじゃねえのー?

101 名前:nobodyさん mailto:sage [2012/06/04(月) 11:18:57.14 ID:???]
ええ・・・
$form->input()
でしかエラーを自動で表示してくれないって知ってた?
$form->radio()
じゃ表示してくれない。

今初めて知った・・・めちゃハマってたわ・・・くそが
バーションは1.3

102 名前:nobodyさん [2012/06/04(月) 16:16:23.03 ID:npZV9BUE]
radioでも何も選択されてない状態でsubmitすればエラー出るんじゃないの?




103 名前:101 mailto:sage [2012/06/05(火) 03:40:59.31 ID:???]
>>102
出なかったよ

104 名前:nobodyさん [2012/06/06(水) 09:28:58.59 ID:KukcN70n]
さくらインターネットを使ってるんですが、サブディレクトリでCakePHPを運用したい場合可能ですか?
RewriteBaseをいじくりまわして、
ググってありとあらゆるパターンを試してみたんだけど
どうやっても500エラーが出てできない・・・

105 名前:nobodyさん mailto:sage [2012/06/07(木) 00:31:59.74 ID:???]
htaccessじゃなくてindex.phpの設定だけでサブディレクトリ運用できたような記憶が
500出てるってことはhtaccessの記述が間違っているっぽい

106 名前:nobodyさん mailto:sage [2012/06/07(木) 01:11:37.96 ID:???]
直接Cakeに関係ないならすみません。
バージョンは2.1です。

cakeフォルダを作成してそこに配置したとします。
通常だとブラウザのアドレスバーにはhoge.xx.yy/cake/controller/actionと成るわけですが、
それをhoge.xx.yy/controller/actionと表示するようには出来ませんか?
(見た目だけで良くて、アドレスバーに入力してその通りに動作する必要はありません)

ネットでhtaccessというかRewriteのページをかなり見たのですが、見た限りは上で言うcontroller/action/*1/*2の順番というか、パラメータの記述方法を変えたりするような方法ばかりでした。

何かヒントになるサイトとかでも良いのでご指導頂けませんでしょうか?

107 名前:nobodyさん mailto:sage [2012/06/07(木) 01:41:54.69 ID:???]
PHP素人(触り始めて数日)ゆえ質問がCakePHP固有じゃなかったらすみません。

あるカテゴリキーワード(可変数。10個前後)が格納されたDBテーブルが
あって、さらに別のテーブルにはカテゴリキーワードごとのトッピックスが
1000個程度登録されています。

トップページで各カテゴリキーワード毎にトピックを5件だけ表示させたいの
ですが、やり方がわかりません。
カテゴリキーワードを取ってきて表示されるだけなら、findAllで取ってきて
VIEW内でforeachでまわす事で実現できました。

foreachのループ内で、現在着目中のカテゴリキーワードで詳細テーブルから
5件だけ取ってくる方法が分かりません。
トピックを全レコード事前に取得しておいて、viewの中で無理やりキーワー
ドが一致するものを5件だけ表示させる方法は思いつきますが、もっとスマー
トな方法はありませんでしょうか?

108 名前:nobodyさん mailto:sage [2012/06/07(木) 02:31:59.60 ID:???]
>>106
htaccessで書き換えられないこともないだろうけど推奨されてないだろうし不具合の原因だからやめた方がいいよ
app/webrootをウェブルートに置けない理由はあるの?

>>107
アソシエーションを学ぶんだ
一発でカテゴリキーワードごとにトピックスを5件とってこれる

109 名前:nobodyさん mailto:sage [2012/06/07(木) 04:44:57.83 ID:???]
PHP全般の問題なのか、CakePHP固有の問題なのか判断できないような人は、
判断できるようになってから質問しろよ

110 名前:104 [2012/06/07(木) 07:36:24.96 ID:T3CmHb0t]
>>105
index.phpの設定ってどのindex.phpでしょう??
ちなみにどのように設定すると良いのが教えていただけると幸いです

111 名前:nobodyさん mailto:sage [2012/06/07(木) 11:41:22.43 ID:???]
>>108
返答ありがとうございます。
単純に今現在すでにHPがあり、機能追加をする形でcakeを使用するのですが、
現状appフォルダがすでにあるのでと言う理由だけです。
既存フォルダ名の変更が不可の為、フォルダを作って・・と言うのを考えてたのです。
既存フォルダ名の変更不可というのはURL的に見た目がappじゃないとまずいということでして、サーバ上はapp2とかにしてもURLの見た目がappになればOKなんです。

どうすればよいかわからなかったので先ほどの質問として書いたと言う訳なんです。

112 名前:nobodyさん mailto:sage [2012/06/07(木) 12:11:49.60 ID:???]
単純な結合(とはちょっと違うけど)にいちいちアソシェーション使うくらい
ならDB側にView作ってしまいたくなるんだけど、そういう人はいないの?

まあ、実装箇所が複数に分かれるデメリットもあるのでビュー禁止ってとこも
結構あるけど。



113 名前:nobodyさん mailto:sage [2012/06/07(木) 14:50:42.40 ID:???]
htmlヘルパーのnestedListで、li要素ごとにclassを変えたい場合はどうすれば
いいんでしょうか?

114 名前:nobodyさん mailto:sage [2012/06/07(木) 21:27:01.49 ID:???]
>>111
そもそもappをドキュメントルートに置いちゃダメ。
webrootをドキュメントルートにおいて
それ以外はwebroot以外に配置する。

115 名前:nobodyさん mailto:sage [2012/06/07(木) 21:28:11.55 ID:???]
ごめん、ちょいミスった

>>111
そもそもappをドキュメントルートに置いちゃダメ。
webrootをドキュメントルートにおいて
それ以外はドキュメントルートの外に配置する。

116 名前:nobodyさん [2012/06/08(金) 02:27:11.80 ID:RAatNy5a]
>>110
app/webroot/index.php
もちろんここがウェブルートになるように設置しないとダメだよ

>>111
まず>>115の言うようにapp/webrootをドキュメントルートに置かないとダメ
サーバーの設定でドキュメントルートが変更できない場合の対策は、xrea、コアサーバー、さくらあたりでのノウハウがいっぱいあるから
それを調べて実行するとよい

>>112
規約に沿うのがフレームワークだからDBはモデルで扱うしか考えたことがないなあ

>>113
俺はなんか実装めんどくさそうならHTMLで書いちゃうわ

117 名前:104 [2012/06/08(金) 09:16:24.94 ID:u8Vc96TE]
>>116
ありがとうございます。
ウェブルート=ドキュメントルートってことですか?

118 名前:104 mailto:sage [2012/06/08(金) 09:16:57.73 ID:???]
>>117
あ、全部読んでませんでした。
そういうことですね。
もうちょっと試してみます。
ありがとう!

119 名前:nobodyさん mailto:sage [2012/06/08(金) 13:58:30.27 ID:???]
>>113
1ずつ全部変えるのは無理だけど
itemOptionsで、even,oddの指定を入れると、奇数行、偶数行のクラスは指定できる
続きはソースで…

120 名前:111 mailto:sage [2012/06/08(金) 16:35:33.96 ID:???]
>>114 >>116
私のフォルダ配置に対する理解が足りなかった訳ですね・・

レス頂いてから試してみました。
wwwの下にフォルダを作成してそこにappやlibなどのファイルを配置。
でwebrootフォルダの中身をwwwに置いてindex.phpを触れば(ROOTとかの位置を指定すれば)ちゃんとcakeとして動作してくれたのは確認できました。

home
|--ユーザアカウント
|
|--cake
| |--app
| |--lib
| |--・・・その他
|
|--www
|--css
|--img
|--js
|--index.php

のような感じで動作したのは確認できました。

でもう一つ疑問がわいてきましたが、先の話で既存のHPがある場合、index.phpとindex.htmlがかぶることになります。
今回もそのパターンで、ネットでさくらにインストールした場合を探してみるとwwwよりhome側に置くのはよく出てるのですが、
どれもwwwに一つフォルダを作成してそこに元のwebroot内のデータを置いてる感じでした。

動かしてみましたがindex.html index.phpの優先になってる方が起動するだけでした(当たり前ですが・・)

今回のようにcakeのindex.phpと元のindex.htmlがあるような場合はどのようなやり方がありますか?

121 名前:111 mailto:sage [2012/06/08(金) 16:36:54.35 ID:???]
>>120
あああ、すみません。
書き込んだらスペースが削除されちゃいました。
cssから下はすべてwww内とのつもりです。

宜しくお願いします。

122 名前:nobodyさん [2012/06/09(土) 00:03:03.20 ID:7iLO1txZ]
>>120
いまwwwになってるところをwww/cakeとかにすればいいんじゃないの?
htaccessの修正も必要になるかもしれないけど
俺なら既存のファイルが全部スタティックならcakeに統合しちゃうけどな



123 名前:nobodyさん [2012/06/09(土) 16:53:54.98 ID:u4onJvJp]
バージョン上げたら、Eclipse+PDTでヘルパーの補完できなくなったorz
$this->Http->
補完する方法ないのですか?

124 名前:nobodyさん mailto:sage [2012/06/13(水) 23:54:08.72 ID:???]
nanapiが訪問者1000万とかでインタビュー記事が出てたけど、
Cakeで作ってるんだろ?どうやってアクセスこなしてるんだろ・・・
キャッシュ使えばパフォーマンスは気にならないのかな

125 名前:nobodyさん mailto:sage [2012/06/14(木) 00:07:28.83 ID:???]
>>124
記事のページとかPV稼いでいる部分は生PHPで書いて、それ以外のあんまりPVないところはCakePHPで作ってるって話をしていた気がする
30万UU/monthくらいのサイト持ってるけど、ビューキャッシュだけで共用レンタルサーバーでも余裕でさばけるから、
パフォーマンス追求しなければキャッシュだけで十分いけると思う
後はスケーリングの問題だな

126 名前:nobodyさん mailto:sage [2012/06/14(木) 01:40:16.19 ID:???]
>>125
記事ページもcakeっぽいルーティングなんだけど生PHPなの?
うまく工夫しているのかな。凄いな。


127 名前:nobodyさん [2012/06/14(木) 02:08:15.49 ID:nFrC9cht]
>>126
別にそれは記事ページだけならReWriteして1行で変更できるでしょ

128 名前:nobodyさん mailto:sage [2012/06/14(木) 02:23:56.37 ID:???]
普通にwebサーバを複数台並べてるだけじゃないの?

129 名前:nobodyさん mailto:sage [2012/06/14(木) 12:33:43.22 ID:???]
CakePHPのAuthコンポーネントを使ってますが、よくあるような

ユーザ仮登録

メール

メールに記載されたURLクリック

本登録

という流れの中で、本登録ページが正しく表示されたらログイン後状態に
したいです。controllersの内部で認証後状態にするにはどうすればいい
でしょうか?

130 名前:nobodyさん mailto:sage [2012/06/14(木) 12:52:02.54 ID:???]
loginメソッドに引数渡す

131 名前:nobodyさん mailto:sage [2012/06/14(木) 13:20:39.06 ID:???]
>>125
UUじゃなくてPVで語れよ

132 名前:nobodyさん mailto:sage [2012/06/14(木) 20:56:45.56 ID:???]
>>131
>>124に併せてUUを書いたけど、PVは60万くらい




133 名前:nobodyさん mailto:sage [2012/06/14(木) 21:34:54.69 ID:???]
>>132
少なすぎないか?
月30万UUって、1人が2ページしか見てないって事だろw

134 名前:nobodyさん mailto:sage [2012/06/14(木) 22:42:24.08 ID:???]
就職を控えた学生の間で、ブラック企業探しが流行し、中には流されてしまう人もいるらしい。サービス残業の多い会社や有給休
暇を取れない会社のことを指しているようだ。僕自身、「違法な只働きの多い会社はどこですか?」なんて質問はよく受ける。だ
が、はっきりいってみんな甘い。甘すぎる。そんなのブラックでもなんでもなくて、日本企業なら当たり前の話なのだ。「フラン
スやドイツより年間300時間程度は長時間労働で、有給休暇も消費せず、辞令一枚で全国転勤」というのは、日本が世界に誇るカ
ルチャーである。日本は今でも終身雇用が建前の国である。いつ潰れるかわからないような中小の下請け企業ならともかく、普通
の会社では解雇なんて不祥事でも起こさない限りは行われない。もちろん、こういう楽ちんなシステムを維持するためには、それ
なりの工夫が必要だ。まず、一定の残業は大前提だ。新規採用の代わりに残業でカバーしておけば、不況時に残業カットで人件費
を抑えられる。有給休暇が取れないのも理由は同じだ。全国転勤なんて制度があるのは日本だけだが、これも終身雇用を維持する
ためのものだ。つまり、人事部がハローワークの代わりに社内の空きポストを見つけ、再就職の斡旋をしているようなものなのだ。
であるため、大手優良企業ほど、残業も転勤も有給取得制限も確実に存在するし、雰囲気的に文句は言えない。たまに、日本企業
の労組が「組合員の長時間残業や転勤を黙認している」といって非難する人もいるが、ちょっと違う。すべては終身雇用システム
を守るための、やむを得ない副産物なのだ。たまに「勇気を持って拒否できないんですか?」という質問も受けるけど、そんなこ
と主張して村八分に耐えるだけの強靭な精神力があるなら、最初から年俸制の企業に行って頑張ることをおススメする。ところで、
真のブラック企業とは何だろうか。それは上記のロジックからすれば明らかだろう。最初から終身雇用を守るつもりも、成果に応
じた年俸を上乗せする気もなく、長時間残業が当たり前で有給も取れない会社のことだ。新卒の時点でそういう会社に遭遇するこ
とは「滅多に」ないし、入ったら入ったで何年か修行して転職すればよいだけの話なので、入る前からあれこれ心配する必要は無
い。最悪なのは右往左往した挙句、内定無しで卒業してしまうことだというのはおぼえておくといい。

135 名前:nobodyさん mailto:sage [2012/06/15(金) 01:24:50.42 ID:???]
>>133
直帰率高いからな
趣味だから特に施策もしてないし

136 名前:nobodyさん mailto:sage [2012/06/18(月) 09:29:52.49 ID:???]
formのcreateの際の第一引数をnullにしても、form->inputが生成したhtmlを
見るとpostデータにmodel名が含まれてしまう事があるのですが、postデータ
にmodel名を含ませないように出来ないのでしょうか?

<input name="data[test]" type="text" value="" id="test" />

こうなる場合と

<input name="data[models][test]" type="text" value="" id="test" />

こうなる場合があります

137 名前:nobodyさん mailto:sage [2012/06/18(月) 09:55:08.10 ID:???]
自己解決
nullじゃなくてfalseにすれば期待した動作になりました

138 名前:nobodyさん mailto:sage [2012/06/20(水) 20:53:26.92 ID:???]
Cakephp歴2年 CodeIgniter歴1年 ZendFramework歴2年

の俺が言う

Cakephpはやめとけ

139 名前:nobodyさん mailto:sage [2012/06/20(水) 21:44:38.57 ID:???]
人がいないと駄目ってウメハラが言ってた

140 名前:nobodyさん mailto:sage [2012/06/20(水) 21:45:23.02 ID:???]
>>138
おすすめ教えてよ

141 名前:nobodyさん mailto:sage [2012/06/20(水) 22:13:18.78 ID:???]
ダメな理由くらい言えw

Cakeは国内の知名度だけはいい線いってるよ

142 名前:nobodyさん mailto:sage [2012/06/21(木) 00:32:08.42 ID:???]
やっぱり知名度が一番重要だよ
いくらFUELPHPが凄くても一人で細々とやっててもねぇ

あ、英語できるならいいけど



143 名前:nobodyさん mailto:sage [2012/06/21(木) 01:35:20.48 ID:???]
OSSだと知名度つうか使う人が多いと開発陣のモチベにも関わってくるしね
2.2ももうすぐ出そうだし、最近のCakeは順調…すぎてついていけなくなってるけどw

144 名前:nobodyさん mailto:sage [2012/06/21(木) 01:40:37.49 ID:???]
>>140
Yii一択
使えば使うほど楽しい

145 名前:nobodyさん mailto:sage [2012/06/21(木) 02:16:55.75 ID:???]
mysqlとの組み合わせで、外から与えた変数で取得結果を変えたいです。
レコードのとあるフィールドの値で取得結果を変えるなら

select
 case field1 when 0 then 'ぬるぽ' else field2 end
from tblA;

こんな感じでSQLの記述だけで完結出来るんですが、外から与えた変数で
同じような事を簡単に出来ないでしょうか?

取得結果は最終的にはviewで表示するのですが、
view内でforeachで回す際にループごとに条件判定をして…という方法は避
けたいです(viewにあまりゴテゴテとロジックを書きたくないので)



146 名前:nobodyさん mailto:sage [2012/06/21(木) 08:42:57.93 ID:???]
>145
mysqlならIFって関数があるから、fieldsかモデルの$virtualFieldsで、

"IF(Model.field1 = 0 , 'ぬるぽ' , Model.field2)"

って書いてる。条件が複数あるなら入れ子でもいける。


147 名前:nobodyさん mailto:sage [2012/06/21(木) 13:31:33.73 ID:???]
>>144
お前そればっかりだな
どこがいいとか具体的なこと教えてくれよ

148 名前:nobodyさん [2012/06/21(木) 18:17:56.38 ID:bhjX0YXl]
>>144
コードイグナイタ

見通しが良いから

149 名前:148 [2012/06/21(木) 18:18:47.19 ID:bhjX0YXl]
140と間違えた

150 名前:nobodyさん mailto:sage [2012/06/21(木) 19:08:33.82 ID:???]
cakephpで有用なのはSetのみ

151 名前:nobodyさん [2012/06/21(木) 19:49:36.93 ID:0C9bmUAd]
>>150
廃止されるで

152 名前:nobodyさん mailto:sage [2012/06/21(木) 20:13:49.65 ID:???]
マジで?じゃ、どうやってビューに値を渡すの?



153 名前:nobodyさん mailto:sage [2012/06/21(木) 20:28:25.81 ID:???]
PHP本体に組み込まれたら嬉しいな〜

154 名前:nobodyさん mailto:sage [2012/06/21(木) 20:54:48.63 ID:???]
Setクラスと
Controller->set()は別物

155 名前:nobodyさん mailto:sage [2012/06/21(木) 23:51:44.61 ID:???]
blog.xao.jp/blog/cakephp/class-hash-new-featur-cake2-2/
なるほどHashクラスに置き換わるのか

156 名前:nobodyさん mailto:sage [2012/06/22(金) 02:40:29.62 ID:???]
やべえ2系に全然ついていけてないw

157 名前:nobodyさん mailto:sage [2012/06/22(金) 07:52:03.33 ID:???]
>>147
・速い
・小規模、大規模にも対応できる
・CIより高機能、CakePHPより簡潔
・その他あらゆる点、全体の思想やARなどなどが洗練されてる

158 名前:nobodyさん mailto:sage [2012/06/22(金) 10:33:48.17 ID:???]
デメリット:
・設置に関する情報が少ない
・既存プラグインが少ない

159 名前:nobodyさん mailto:sage [2012/06/22(金) 11:25:22.29 ID:???]
1.3系を使っています。

function index($id){
 $this->_idcheck($id);
}

function _idcheck($id){
 if ($id != 1) {
  $this->layout = 'error';
  $this->render('/errors/error');
  return false;
 }
}

こんな感じで$idが指定と違うとエラーページを表示させたいのですが、
上の書き方だと2回renderされます。(indexのビューもrenderされます)

$this->render('/errors/error');の次行に$this->_stop();をしたら
ページ全体が表示されないし、どうやって特定のエラーページのみ
表示したら良いか分かりません。ご存じの方はアドバイスお願いします。

160 名前:nobodyさん mailto:sage [2012/06/22(金) 11:39:12.45 ID:???]
render()のとこでreturnしてよかったんじゃなかったっけか

もしくはautoRenderで検索

161 名前:159 mailto:sage [2012/06/22(金) 11:52:47.08 ID:???]
>>160
159のコードで、

$this->render('/errors/error');
$this->autoRender = false;
return ;

としてもindexのビューは表示されます。
出来ればidcheckのerrorビューで止めたいのですが・・・

162 名前:nobodyさん mailto:sage [2012/06/22(金) 12:26:35.74 ID:???]
てか2回renderされること自体がおかしいんじゃないのか?
viewが2個連なってでてるの?
そんなことあったっけ?
解決しないようなら後で試してみるけど、

↓この順番にしたらどう?

$this->autoRender = false;
$this->render('/errors/error');

あとは、
idcheck()ではbooleanを返すようにして、
falseが帰ればそのindex()内でreturnしてみるとか?

つまりidcheckでreturnしてもidcheckを抜けるだけだから全く意味ない。



163 名前:159 mailto:sage [2012/06/22(金) 13:07:10.41 ID:???]
>>162
その方法も一緒でした。

おっしゃるとおり、idcheckでreturnしても意味無いのですが、
index内で分岐をさせる場合

if ($this->_idcheck($id)) {
 trueの場合の処理
} else {
 falseの場合の処理(エラページ出力)
}

としていかなければならず、idcheckが必要な全アクションに
これを入れるのはどうかと思い、idcheck内で解決出来ないかと探していました。
renderで出力ではなく、cakeErrorで404を出力すれば
ページエラーとして表示され、その後の処理も止まるんですけどね・・。

164 名前:nobodyさん mailto:sage [2012/06/22(金) 14:00:47.36 ID:???]
これを
$this->_idcheck($id);

こうしろ
if(!$this->_idcheck($id)) return false;






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

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

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