のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,682,998人
昨日:no data人
今日:
最近の注目
人気の最安値情報

私的良スレ書庫

不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

元スレ【PHP】フレームワーク CakePHP 12ホール目【笑】

php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
601 : nobodyさん - 2011/10/06(木) 14:31:07.87 ID:??? (+52,+29,+0)
そんなに大変じゃないと思う
602 : nobodyさん - 2011/10/06(木) 14:37:49.66 ID:??? (-1,-29,-2)
CakeのAuthがうまく動かなくて大変だった
603 : nobodyさん - 2011/10/06(木) 15:58:47.36 ID:??? (+10,-27,-43)
>>594
symfonyやYiiなんかは基本オブジェクトなんだよな。
やっぱりCakeは合わない。
604 : nobodyさん - 2011/10/06(木) 17:16:41.59 ID:??? (+95,+29,-3)
使ったことないけど、これで解決できそう
http://d.hatena.ne.jp/basuke/20110908/1315479931
605 : nobodyさん - 2011/10/06(木) 17:25:40.33 ID:??? (+70,+29,-24)
>>604
これ見ると、俺も”オレオレ”ではエンティティ方式で書いてた。
けど、この書き方だと統一感無いので配列の方が良いと思って今に至る。
人それぞれ好みがあるんだな。
606 : nobodyさん - 2011/10/06(木) 18:21:01.06 ID:??? (+57,+29,-18)
cakeは良くも悪くもPHPらしいフレームワークということで配列主義なんじゃなかったっけ
607 : nobodyさん - 2011/10/06(木) 18:21:07.06 ID:??? (+10,-29,-10)
>>604
basuke氏って今PHPやってるんだ。昔からのMacユーザーならノメモバスターには世話になったはず
608 : nobodyさん - 2011/10/06(木) 19:41:43.25 ID:??? (+57,+29,-35)
CakePHPの悪い点
ユーザーが少ない

昔は多かったのかな、2009年あたりのブログ記事はいっぱい引っかかるね
609 : nobodyさん - 2011/10/06(木) 21:10:11.81 ID:??? (+125,+30,+0)
610 : nobodyさん - 2011/10/06(木) 21:13:18.04 ID:??? (+70,+29,-3)
>>609
日本のみでやってみろよ。明らかにCakeが一番だ
611 : nobodyさん - 2011/10/06(木) 21:22:38.07 ID:??? (+52,+29,+1)
つまりはそういうことだ。
612 : nobodyさん - 2011/10/06(木) 21:44:51.07 ID:??? (+57,+29,-12)
みんな配列きらいなんだな。逆におれは配列が扱いやすくてCakeから離れられん。
613 : nobodyさん - 2011/10/06(木) 22:20:04.58 ID:??? (+57,+29,-27)
結局、どこでどういう配列を扱っているか覚えないといけないからな
オブジェクト指向に慣れると面倒臭いだろ
614 : nobodyさん - 2011/10/06(木) 23:05:55.82 ID:??? (+52,+29,+0)
そんなに大差ないと思うけどな
615 : nobodyさん - 2011/10/07(金) 02:58:35.15 ID:??? (+57,+29,-31)
えーぜんぜん違う。
オブジェクトのほうが柔軟に対応できるし、DRYにしやすい。
まあ結局は好みなのか。
616 : nobodyさん - 2011/10/07(金) 03:28:21.26 ID:??? (+56,+28,-15)
柔軟に対応できる分、規則性が無いよ。
617 : nobodyさん - 2011/10/07(金) 09:31:35.56 ID:??? (+57,+29,-49)
みなさん管理画面ってどうやって作ってます?
一つ一つコードを書いていくのか、プラグインなど利用しているのか。
618 : nobodyさん - 2011/10/07(金) 16:34:15.60 ID:??? (+38,+6,-1)
専用の管理画面作ってるよ。appも分けて。
619 : nobodyさん - 2011/10/07(金) 22:27:16.26 ID:??? (-1,-29,-18)
appを分けるってことは、CakePHPのappディレクトリを複数持つということですか?
620 : nobodyさん - 2011/10/07(金) 23:39:44.94 ID:??? (+3,-29,-21)
>>618
その手があったか
ソッチの方がシンプルに実装できそうだな
俺はわざわざprefixとか利用してadmin_indexみたいな形でやってたわ
621 : nobodyさん - 2011/10/07(金) 23:46:38.35 ID:??? (+57,+29,-69)
ほー。そいや、俺もsymfonyでは複数のapp作って管理画面と分けてたわ。よーするにフロントコントローラをもひとつって事な。
すっかりCakePHPの流儀に染まって忘れてた。
622 : nobodyさん - 2011/10/08(土) 00:23:30.14 ID:??? (+74,+29,-30)
>>609
Yiiって海外では人気なんだな
なんで日本で流行らんのかわからん
623 : nobodyさん - 2011/10/08(土) 00:57:12.99 ID:??? (+48,+25,-1)
日本語の情報が少ないからでしょ
624 : nobodyさん - 2011/10/08(土) 01:56:19.44 ID:??? (+62,+29,-104)
Railsでいうオブジェクト指向の認識なんだけど、

同じデータベースのテーブルを扱うにしても
そのテーブルにあえて違うオブジェクト名を用途別につけてあげて、
それぞれの用途でそのオブジェクト(テーブル)を操作していく。

そんな認識であってるのかな?
625 : nobodyさん - 2011/10/08(土) 08:50:18.96 ID:??? (+62,+29,-167)
オブジェクトとして考えるなら、テーブルの事は一旦忘れた方がいいべ
別に、RDBのテーブルだけじゃなくて、LDAPのデータを取りに行く(っつーか、
データを保持っつーかアクセスする)もんもオブジェクトとして考えられるし、
アクセスする方法があるのなら、ブックマークにアクセスしてオブジェクトとして扱うブックマークオブジェクトも考えられる。

たまたま、RDBのテーブルの内容が、オブジェクトとして扱えるだけ、ってーことなんよ
(まぁ、「たまたま」じゃなくて、そういう風に設計してるからなんだけどな)
626 : nobodyさん - 2011/10/08(土) 08:53:17.08 ID:??? (+62,+29,-127)
肝心なとこ忘れた

>そのテーブルにあえて違うオブジェクト名を用途別につけてあげて、
>それぞれの用途でそのオブジェクト(テーブル)を操作していく。
同じテーブルでも、抽出の仕方や、扱い方で別物として分けた方が分かりやすい、という場合に違う名前のオブジェクトになる、ってーことで、「あえて」じゃないかな
例えば、ユーザーテーブルを、パスワードとの照合も合わせた機能を認証Objectとして扱う場合、とか。
627 : nobodyさん - 2011/10/08(土) 13:11:35.70 ID:??? (+57,+29,-55)
ヘルパー使ってて思うんだけど、
本来、ヘルパーの使用ってコントローラーでやるべきじゃね?
出来るためビューにPHPのコード書かないのが望ましい気がする。
628 : nobodyさん - 2011/10/08(土) 13:13:26.29 ID:??? (+57,+29,-4)
誤字すまん
出来るためビューに → 出来るだけビューに
629 : nobodyさん - 2011/10/08(土) 13:41:18.79 ID:??? (+62,+29,-113)
どのヘルパーによるか?もあるんだが、確かにヘルパーに寄せるべきでない機能なんじゃないか?というのはある。
だが、例えばHTMLとして出力するときと、CSVとして出力する時はエスケープの仕方が違うので、最低限そういった処理をヘルパーとしてviewでしているのは正しい。
630 : nobodyさん - 2011/10/08(土) 16:07:36.63 ID:??? (-2,-30,-27)
例えばビューで
if ($data['User']['status'] == 1) {
echo '公開';
}

みたいな書き方するけど、こういうのってビューで書くのおかしいと思う。
631 : nobodyさん - 2011/10/08(土) 16:25:05.56 ID:??? (+34,-30,-12)
ビュー側は
<? echo $model->getStatus(); ?>
みたいにしたい。
getStatusの中で分岐。
632 : nobodyさん - 2011/10/08(土) 17:05:40.35 ID:??? (+3,-30,-81)
よくわらかんが、たとえばlayouts/default.ctpのビューで

<?php if (!$this->Session->check('Auth.User')): ?>
<a href="<?php echo Router::url('/users/register'); ?>">新規登録</a>
<?php endif; ?>

こういうのもあなた的にはおかしいんですか?
633 : nobodyさん - 2011/10/08(土) 17:06:25.80 ID:??? (+101,+29,-56)
ビューを「デザインする場所」だと思えばおかしいかも知れんけど、
「表示を司るプログラムを書く場所」だと思えばいいんじゃないの

>>631
elementからrequestActionを投げるのがそれに近いのでは。
634 : nobodyさん - 2011/10/08(土) 18:11:29.06 ID:??? (+70,+29,-44)
>>633
そうすると、どう考えてもビューをデザイナーがいじる事は無理だよね。
CMSでよくある、管理画面からテンプレート(ビュー)を編集とかも。
635 : nobodyさん - 2011/10/09(日) 00:02:17.84 ID:??? (+62,+29,-122)
632のようにビューで分岐させるのは、ありだと思う
ケースバイケースだけど
これは、デザイナーよりの分岐なので
デザイナーに編集してもらった方が楽
これくらいの分岐条件ならデザイナーでも、わかると思う。

これを関数で処理するとなれば、HTMLタグを関数内に入れる事になる
要は新規登録のリンクをヘルパーとして扱うのは、効率的に悪い。
新規登録のリンクは、関数として何度も使うことが無い。

新規登録、会員登録の分岐は、それ用にビューをつくっておいて
メインのビューから読み込ませればよい
636 : nobodyさん - 2011/10/09(日) 01:06:32.27 ID:??? (+57,+29,-9)
たしかにケースバイケースだな。
効率と保守性の問題。
637 : nobodyさん - 2011/10/09(日) 01:12:35.73 ID:??? (+57,+29,-38)
俺的にはビューはデザイナに任せるから、PHPのコードが書いてあるなんてありえんのだが
みんなよくやるね
638 : nobodyさん - 2011/10/09(日) 01:39:02.71 ID:??? (+57,+29,-71)
というかデザイナーが仕上げた後にphpコードをプログラマが埋め込む。

phpコードを埋め込んだビューにデザイナが手を付けることはない。

デザイン出来上がり

プログラム組み込み
639 : nobodyさん - 2011/10/09(日) 03:21:51.21 ID:??? (+32,+4,-7)
自分で書いたSQL文をページネーションしたい場合どうしたらいい?
640 : nobodyさん - 2011/10/09(日) 03:28:03.09 ID:??? (-1,-29,-17)
ちょっとしたデータをphpの配列に書いてあってincludeして使いたい場合、どのフォルダに置く?
641 : nobodyさん - 2011/10/09(日) 12:35:10.57 ID:??? (+7,-24,-15)
Configureに読み込ませればいいんでね?
642 : nobodyさん - 2011/10/09(日) 14:10:24.41 ID:??? (+52,+29,+0)
ぶーつとらっぷ
643 : nobodyさん - 2011/10/09(日) 20:53:40.00 ID:??? (+39,-29,-25)
>>641
configフォルダのこと?

>>642
bootstrapだと全ファイルにincludeされて重くならないかな
気にするほどではない?ファイルサイズは100KBないぐらい
644 : nobodyさん - 2011/10/09(日) 21:57:21.11 ID:??? (-1,-29,-35)
俺は「common」ってフォルダ作って、その中にファイル置いてる。
で、bootstrap.phpでincludeしている。

この方が自分が見た目でも分かりやすし、管理しやすいよ。
645 : nobodyさん - 2011/10/09(日) 22:51:40.43 ID:??? (-1,-29,-15)
vendorsフォルダに入れて、使いたいときにApp::importするとか
646 : nobodyさん - 2011/10/09(日) 22:58:39.45 ID:??? (+68,+29,-67)
>>643
Configureクラスに、必要に応じて設定を読み込ませられるメソッドがあった、ってーこと。なんだったかな。。。
そいつを使うと、確かconfigフォルダにファイルを置いておけば、ファイル名渡してやると必要に応じて読み込めたよーな。
647 : nobodyさん - 2011/10/09(日) 23:59:56.16 ID:??? (+73,-30,-82)
設計について相談です。
mypageというコントローラーがあって、
日記の表示なら/mypage/diary_list、編集なら/mypage/diary_edit
というアクションにしているのですが、
これをするとmypage_controller.phpのソースが長くなります。

皆さんはどうしていますか?diary_controller.phpを作って
そこでindexとかeditのアクションを作っていくパターンでしょうか?
648 : nobodyさん - 2011/10/10(月) 01:58:42.29 ID:??? (+12,-29,-19)
>>647
mypageとdiaryのテーブル構造ってどうなってます?
649 : nobodyさん - 2011/10/10(月) 02:48:07.86 ID:??? (+45,-30,-71)
質問です

言語というフォルダがあるとして

1.Japanese
2.English
3.Spanish
4.Chinese
とレコードがあるとしたら

リレーションキーとなるフィールドは別途数字フィールドを用意したほうがいいですか?

それとも
JAN
ENG
ESP
CHN

のように省略系の入った文字列フィールドで繋ぐのはありですか?
後者のほうが頭に入れておきやすいのですが
650 : nobodyさん - 2011/10/10(月) 02:59:56.10 ID:??? (+2,-25,-2)
訂正。
フォルダと書きましたが
テーブルでした。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について