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

私的良スレ書庫

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

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

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
851 : nobodyさん - 2014/07/05(土) 03:35:07.33 ID:???.net (+20,+29,-53)
>>848
エラーがなければ送信ボタン押すってやつ?
入力項目が多いと重くなりそうだし、汎用性も低いんじゃないか?
852 : nobodyさん - 2014/07/05(土) 07:31:42.75 ID:???.net (+33,+29,-21)
>>846
指定したレコードだけでなく全てが破壊されるFWは他に見たことないな…
853 : nobodyさん - 2014/07/05(土) 11:32:54.03 ID:???.net (+21,+29,-39)
>>848
requiredとかありふれた形式チェックくらいは、クライアントでやってもいいんじゃね。
開発工数ったって、そんなのほとんどないに等しいだろ。
854 : nobodyさん - 2014/07/05(土) 20:25:37.65 ID:???.net (+36,+29,-18)
双方に同じチェック実装するのがなんかだかなあ
855 : nobodyさん - 2014/07/05(土) 21:59:45.13 ID:???.net (+24,+27,+0)
>>854
俺も思う。
856 : nobodyさん - 2014/07/05(土) 22:18:10.80 ID:???.net (-29,-27,-16)
AjaxでCakeのバリデーション呼び出せばいいやん
857 : nobodyさん - 2014/07/05(土) 23:28:29.38 ID:???.net (-26,-29,-76)
twitterのようにフォローボタンをAjaxで処理するにはどうしたらいいの?
画面遷移なしで"フォロー"と"フォロー解除"を行いたいです。
AjaxとjQuery初心者でググってもイマイチよく分からない...
858 : nobodyさん - 2014/07/06(日) 00:29:47.41 ID:???.net (-29,-30,-131)
856ですが、内容がアレだったのでこう少し詳しく。
Jsヘルパーのrequestメソッドを使用しようと思ってます。

『フォロー』ボタンを押す(ボタンはdiv #follow)
②Ajaxでpost送信
「フォローした相手」のデータをsaveする
④画面遷移なしで『フォロー解除』ボタン(ボタンはdiv #unfollow)に切り替え

④のボタンの切り替え方法が分かりません。
よろしくお願います。
859 : nobodyさん - 2014/07/06(日) 05:13:50.01 ID:ayo5h1or.net (+28,+29,-32)
>>854 >>854
JavaScript でチェックなんかしなくてもサーバサイド一本にすると
凄く開発効率があがるよ。マジオススメ。

両方チェックとか馬鹿の極みだろ。
860 : nobodyさん - 2014/07/06(日) 05:31:33.41 ID:???.net (+35,+29,-20)
>>859
それ、開発効率が上がるって言わねえよ
単に要件を下げてるだけだ
861 : nobodyさん - 2014/07/06(日) 06:18:30.25 ID:ayo5h1or.net (+24,+29,-34)
>>860
じゃー、お前はクライアントとサーバサイドで同じ処理をガリガリかいてろ
863 : nobodyさん - 2014/07/06(日) 11:47:11.80 ID:???.net (+27,+29,-44)
サーバサイド一本って、それ普通じゃないの?
普通というか正当なCakeのバリデーションというか。
そこから凝るとAjaxを使ったクライアントサイドになるわけで。
864 : nobodyさん - 2014/07/06(日) 11:53:03.79 ID:???.net (+25,+27,-18)
そもそもサーバサイドのバリデーションを省略することがありえないからな
866 : nobodyさん - 2014/07/06(日) 12:21:22.39 ID:???.net (-13,-11,-20)
サーバサイドは必須
クライアントサイドは要件次第
868 : nobodyさん - 2014/07/06(日) 13:50:27.42 ID:???.net (+27,+29,-13)
とりあえず、HTML5だけでやれるものでもやったらいいじゃん。
869 : nobodyさん - 2014/07/06(日) 14:01:42.86 ID:???.net (+27,+29,-51)
クライアントでのバリデーションが要件次第って理解できない奴はそういう仕事をやった事ないだけか、もしくは普段低品質な物を納品してるだけなんじゃね?ほっとけよ
870 : nobodyさん - 2014/07/06(日) 15:40:52.42 ID:ayo5h1or.net (+19,+29,-46)
クライアントでバリデーションを幾ら入れたって
サーバサイドに入れなくちゃ意味ねーだろ。
871 : nobodyさん - 2014/07/06(日) 15:44:02.56 ID:???.net (+32,+29,-167)
噛み合ってないなあ

サーバサイドに入れるのは大前提で
UIの質の向上のためにクライアントサイドにも実装するかどうかってことでしょ?
入力時にリアルタイムでバリデーションするとかそんな感じの

その上で実装方法としてAjaxでサーバサイドのバリデーションを使いまわす方法と
クライアントでJavaScriptで同じバリデーションを書く方法があるって話
872 : nobodyさん - 2014/07/06(日) 15:51:05.55 ID:???.net (-26,-29,-82)
requiredとかtype属性つけるだけで、暇人とか工数とか言ってるの笑えるわw
HTML5が対応していないブラウザなら当然スルーされるから、サーバサイドでのVaildationになるのは自明だろ。
いまどき最低限それくらい書いといて当たり前。
873 : nobodyさん - 2014/07/06(日) 15:58:05.81 ID:???.net (+32,+29,-67)
>requiredとかtype属性つけるだけで
見たところその前提で話してるのは少数派
簡単なチェックだけクライアントサイドでも実装すればいいという意見はもっともだけど

他はJSで書かないといけないような
もっと複雑なチェックも含めて話してるんじゃないのか?
874 : nobodyさん - 2014/07/06(日) 16:20:06.81 ID:???.net (+33,+30,-310)
根本的にクライアント側からのHTTPリクエストなんていくらでも変えられるから
クライアント側のチェックを信用せずサーバ側の実装が必須ってのは前提としてOKなんだよな?
これは仮にHTML5に対応しないブラウザがこの世から消滅したところで変わらない

だからクライアントのバリデーションを実装する主な目的は
セキュリティやデータの正確さの保証ではなくUI・UXもしくはサーバ負荷の低減
早い段階で(サーバを煩わせずに)ユーザが正しくない入力に気付くことは必須ではないが有用だってこと


仕事なら要件次第というのもその通りだろうし
HTML5の属性で実現できる程度なら常に書いておけというのもわかる


各自のイメージしている仕様や前提が違うだけだよな
875 : nobodyさん - 2014/07/06(日) 16:25:16.79 ID:???.net (+38,+29,-60)
あとはクライアントサイドならレスポンスが早いというメリットもあるね

クライアントサイドのバリデーションはなくてもいいけど、あったらうれしい
そんな感じなのはみんな分かってると思うけど、そうじゃないのかなー?
876 : nobodyさん - 2014/07/06(日) 16:31:12.33 ID:???.net (+33,+30,-12)
>>875
俺は、あなたと同じ感じ。
あったら嬉しい♩
877 : nobodyさん - 2014/07/06(日) 20:43:56.62 ID:???.net (+27,+29,-32)
そう、レスポンス
それが分からない奴はその程度の品質の仕事しかしてないって事
878 : nobodyさん - 2014/07/07(月) 00:35:24.40 ID:???.net (+32,+29,-19)
うわあんあ!プログラム全部作り直してーって思った時どうする?
我慢して作り続けるか、一から作り直すか。
879 : nobodyさん - 2014/07/07(月) 07:41:59.67 ID:???.net (+26,+29,+2)
>>878
作ればいいじゃない
880 : nobodyさん - 2014/07/07(月) 11:17:31.99 ID:???.net (+27,+29,-17)
最近日本語が読めない人がレスを延ばしてるのな
881 : nobodyさん - 2014/07/08(火) 18:18:22.90 ID:???.net (+33,+29,-31)
テストケースで、今週の日付を返すメソッドをテストする時どうする?
テスト側でわざわざ今日の日付を取得してでもやるべきなのかな。
882 : nobodyさん - 2014/07/08(火) 19:21:17.99 ID:???.net (+20,+22,-9)
なんかそれ簡単にするPHPの追加機能なかったっけ
883 : nobodyさん - 2014/07/08(火) 19:56:03.84 ID:???.net (+37,+29,-11)
>>881
テストケースがあるならやらないとダメなのでは?
テストケース作った奴に聞け
884 : nobodyさん - 2014/07/08(火) 20:34:19.53 ID:???.net (+32,+29,-7)
>>883
テストケースを自分で作ってるんだけど、
テストするためにメソッド追加するのは本末転倒だし。
885 : nobodyさん - 2014/07/08(火) 21:10:41.73 ID:???.net (+22,+29,-2)
モック使うだろ普通
886 : nobodyさん - 2014/07/08(火) 21:57:00.34 ID:???.net (-22,-29,+0)
焦点は現在時刻を返す部分をいかに切り分けるかってとこじゃない

より汎用的に引数に指定した日時の週の日付を返すメソッドを予め作ってテストしておいて
本体はその汎用的なメソッドを現在時刻を引数に呼び出すだけのメソッドにして目視確認
ってのが驚きの少ない無難な方法だと思うけどそのメソッド自体にテストケース書けと言われると微妙か


2つ目は現在時刻を返すメソッドを実装したクラスのインスタンスを注入する仕様にする方法
テストの時は同じインターフェースで固定値を返すように実装したモックオブジェクトを代わりに注入
PHPUnitならgetMockつかえばモックオブジェクト作るのは簡単だね


もし他のライブラリ使ってもいいならメソッドの実装にCarbonを使う
DateTimeクラスを継承していて非常に使いやすいし
現在時刻を返すスタティックメソッド(Carbon::now)もモックできるので楽
http://github.com/briannesbitt/Carbon
887 : nobodyさん - 2014/07/08(火) 22:07:18.39 ID:???.net (-22,+29,-6)
ごめん正確には現在時刻じゃなくて現在日時だな
888 : nobodyさん - 2014/07/08(火) 23:07:28.08 ID:???.net (+18,+23,+1)
>>886
>>886
ありがとうございます!
やってみます。
889 : nobodyさん - 2014/07/08(火) 23:27:31.87 ID:???.net (+32,+29,-75)
githubで配布されてる、timecopってライブラリいいよ。コアの時刻系関数を全部上書きされ、モック日付を設定するAPIが追加されるので、今日があたかも昨日かのようにテストできる。結構な規模のシステムで1年くらい使ってるけど、特にハマりどころもなかったよ。
890 : nobodyさん - 2014/07/08(火) 23:32:03.79 ID:???.net (+27,+29,-17)
Rubyのあれの移植か
ライブラリじゃなくてエクステンションだね
891 : nobodyさん - 2014/07/08(火) 23:43:10.63 ID:???.net (+22,+29,+0)
そうだね。すまん。
893 : nobodyさん - 2014/07/09(水) 08:16:02.07 ID:OfaKG9nk.net (+11,+26,-1)
無理ちゃうか?
895 : nobodyさん - 2014/07/09(水) 21:25:01.58 ID:???.net (+22,+24,-21)
PHPもフレームワークも関係ありませんよ?
Windows板に行きましょう
897 : nobodyさん - 2014/07/10(木) 10:49:28.02 ID:???.net (-27,-30,-59)
User(会員)→Photo(会員が投稿した写真)
というモデル構成の場合について質問です。
写真を置くディレクトリ構造ってどうしてますか?

http://example.com/images/users/(会員ID)/(画像ファイル名)
http://example.com/images/photos/(写真ID)/(画像ファイル名)
http://example.com/images/users/(会員ID)/photos/(写真ID)/(画像ファイル名)

という3パターンが思い浮かぶのですが、
どうした方が後々管理しやすいと思われるでしょうか?
皆さんがやっている方法を教えてください。
898 : nobodyさん - 2014/07/10(木) 14:19:59.62 ID:???.net (+27,+29,-19)
サービスの内容による。

少なくとも想定する会員数と画像の枚数、
会員毎の画像以外のアセットの有無、
あるなら何がどの程度か、などがないとなんとも言えない
899 : nobodyさん - 2014/07/10(木) 21:45:46.46 ID:???.net (+18,+23,-34)
サブドメイン http://img.example.com/
データベースにBLOB型でぶち込む

と言う手もあるぞよ
900 : nobodyさん - 2014/07/10(木) 22:31:15.57 ID:???.net (-24,-24,-26)
>>899
BLOB型でぶち込むって、ファイル自体をDBで保存するの?
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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