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

    私的良スレ書庫

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

    元スレ【PHP】フレームワーク CakePHP 9ホール目【v1.3】

    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
    651 : nobodyさん - 2010/09/24(金) 03:55:59 ID:??? (+27,+29,-46)
    作業高速化のためにFW使ってるのにわざわざそのFWに合わせて作り直すの?本末転倒だろ
    652 : nobodyさん - 2010/09/24(金) 08:33:43 ID:??? (+28,+30,-25)
    ぶっちゃけ、大して作業が高速化する分けじゃないけどな。
    むしろ命名規則にのっとたり、書き方も厳密にしなきゃいけないし、
    よけない手間が増える。

    だが、優柔不断な俺にはそれが良い。
    653 : nobodyさん - 2010/09/24(金) 08:42:53 ID:??? (+43,+30,-190)
    そもそも既存のシステムのためにFWを導入するわけではないと思うよ?

    PHPみたいに甘い言語だと、プログラマーによって
    かなりオレオレ仕様だったり、ソースがわかりずらかったりするから
    フレームワーク使うと、統一化されて跡から保守しやすいっていうメリットが生まれる。

    また、ページごとにやってたようなエラー処理だとか
    フォームの入力チェックみたいな処理も自動化出来てわかりやすい。

    どちらかというと3人程度~の新規開発向けだと思うよ。
    個人でやってぱぱっと作るならFW使わなくても別に困らないしw
    654 : nobodyさん - 2010/09/24(金) 09:42:52 ID:??? (+33,+30,-143)
    命名規則なりクラス構成規約なりを開発メンバーに強制することにより、
    多少の生産性は犠牲にしつつも保守性を上げるための仕組み、
    という面は確実にある気がする。
    慣れてくればそのオーバーヘッドもだんだん減ってくる(はず)だし、
    そもそもFWって元来そういうもんだよね。

    CakePHPの場合は強制される規約が多すぎて、
    たとえばタグライブラリ的な使い方をしようと思ったときに
    ちょっと難しい部分があるのも事実だけど。
    655 : nobodyさん - 2010/09/24(金) 09:50:20 ID:??? (+38,+30,-126)
    >>653-654
    でも、それらって中小以上の、制作会社なら
    独自の規約やルールが決まっていると思うんだよな。
    フォームヘルパーのようなライブラリも作ってるだろ。

    SOHOなら別にオレオレでも構わないと思うし、規模もたかが知れてる。
    かといって、規模が大きめの案件ならFWは速度的なネックがある。

    まぁ、俺はオレオレの仕様変更が多くて定まらないから、
    Cake使ってるんだけどな。規模が小さい案件ばかりだし。。
    659 : nobodyさん - 2010/09/24(金) 11:33:35 ID:??? (-21,-30,-34)
    >>658

    $dataにidがあればupdateになるから

    array(
    'id'=>1,
    'field1'=>'hoge',
    );

    これをsaveすればid1のfield1のみアップデートされる
    661 : nobodyさん - 2010/09/24(金) 11:35:49 ID:??? (+27,+29,-3)
    ああ、更新か。読み違えてた。すまん。
    664 : nobodyさん - 2010/09/24(金) 12:16:54 ID:??? (+21,+29,-38)
    >>659
    すみません質問間違ってました、id以外をキーにしてそれできませんかね。

    できないなら、やはりfindしてidを取ってこないといけないですよね。
    665 : nobodyさん - 2010/09/24(金) 12:39:38 ID:??? (-12,-30,-63)
    >>662
    Controllerクラスだけでなく、Viewクラスにも pageTitle というプロパティがあるので、
    ctpファイルのどこかで
    <?php $this->pageTitle = "ほげほげ"; ?>
    とすればOKだと思う。
    666 : 659 - 2010/09/24(金) 13:31:47 ID:??? (-28,-29,-12)
    >>664
    updateAll使えばできたんじゃないかな
    667 : nobodyさん - 2010/09/24(金) 14:39:38 ID:??? (+21,+29,-7)
    >>665
    答えに近いこと書いてあるけど、質問者の使ってるの1.3だからさ
    668 : 662 - 2010/09/24(金) 15:21:06 ID:??? (-28,-30,-101)
    あー、すみません、バージョンは1.3です。
    このあたり、1.3で仕様が変更になっているんですよね。
    'inline' => false の指定方法とか。

    <?php $title_for_layout = 'ほげほげ'; ?>

    のようにctpファイル内で変数をしてみましたが、レイアウトには適用されませんでした。
    もう少し調査してみます。
    669 : nobodyさん - 2010/09/24(金) 16:20:29 ID:??? (+32,+29,-44)
    >>663
    ありがとうございます。やり方がわかりました!

    シリアライズされた元のデータがあるので、
    それを扱う例があれば嬉しいですけど、ネットで探しても見つからない
    って時は作るしかないですよね。。わがままですよね
    670 : nobodyさん - 2010/09/24(金) 16:33:01 ID:??? (+32,+29,-66)
    >>669
    てか、いきなりCakePHP(フレームワーク)からはじめたの?
    普通は、素のPHPのプログラミングを勉強していって
    君の言う改ページ処理やファイルに書き込む処理など
    基本的なコードを書いて勉強していくと思うんだけど。
    673 : nobodyさん - 2010/09/24(金) 17:25:48 ID:??? (-27,-29,-54)
    >>669
    Modelでpaginate()とpaginateCount()を実装する。
    他はsave()やfind()を透過的につかうかによって変わるけど、
    内部データへのアクセス自体を独自にしてしまったほうが単純に楽だと思う。
    679 : nobodyさん - 2010/09/25(土) 05:06:39 ID:??? (-24,-30,-117)
    >>659
    モデル内でそのようにsaveすると
    $this->save( array( 'id' => $data, 'name' => $name ) );
    以下のエラーが出ます。
    SQL Error: 1054: Unknown column 'Array' in 'field list' [CORE/cake/libs/model/datasources/dbo_source.php, line 673]
    Query: UPDATE `tablename` SET `id` = Array, `name` = 'xxxx'

    1.3.2ですが、何か最近変わったりしたんでしょうか。
    680 : nobodyさん - 2010/09/25(土) 05:10:47 ID:??? (+24,+29,-2)
    すんません>>679はミスでした
    寝ます
    681 : nobodyさん - 2010/09/25(土) 05:10:51 ID:??? (+27,+29,-14)
    1.3使ってないけど、実行してるSQLがまさにそこに表示されてるんだから
    解決するのはそんなに難しくないような気がする
    682 : nobodyさん - 2010/09/25(土) 06:24:18 ID:??? (-29,-30,-172)
    1.3ですがvalidateが不可解な動きをします。
    あるモデルにユニークを保証したい文字列user_idがあり
    var $validate = array(
    'user_id' => array(
    'rule' => 'isUnique',
    'message' => 'must be unique'
    )
    );
    と指定。
    モデルにレコードの新規作成関数を以下のように用意しました。

    // 初期データ
    $userInfo = array(
    "UserInfo" => array(
    "id" => null,
    "user_id" => $user_id,
    "level" => 1,
    ...
    )
    );
    $this->create();
    if ( $this->save() ){
    var_dump('save ok');
    return;
    }
    var_dump('validate ng');

    つづく
    683 : nobodyさん - 2010/09/25(土) 06:25:31 ID:??? (-26,-29,-87)
    そしてこれを既存のuser_idで呼んでみると、validate ngと出て新規作成は阻止されますが、
    何故か既存のデータが上記の初期値で更新されてしまいます。
    これは正しい動作なんでしょうか。

    また、validateの条件をnumeric等に変えてみるとこの現象は起きません。

    わけわからんので誰か謎を解いてください。
    684 : nobodyさん - 2010/09/25(土) 07:18:00 ID:??? (+22,+29,-1)
    あいかわらずアホばっかりだな
    687 : nobodyさん - 2010/09/26(日) 09:19:40 ID:??? (+27,+29,-27)
    説明も不十分だし、全部どっかうpしたほうがいいんじゃねえの?みてもらえるかは別として。
    688 : nobodyさん - 2010/09/26(日) 13:07:37 ID:??? (+20,+29,-4)
    どの辺が不十分ですか?
    689 : nobodyさん - 2010/09/26(日) 19:05:33 ID:??? (+22,+29,-1)
    スレが止まるほどの難問なのか
    690 : nobodyさん - 2010/09/27(月) 01:59:38 ID:??? (+33,+29,-47)
    >>653
    その理屈は結構前の話しだな。
    今はフレームワークも便利な機能てんこもりで、
    独りで作るのにも利用しないと大幅に差が出る。
    691 : nobodyさん - 2010/09/27(月) 09:51:39 ID:??? (-28,-29,-95)
    >>688
    横からだけど
    CakePHPのダンプに出てないということは、CakePHPのsave()以外が更新している可能性を否定できないし
    validatesで更新されているとなればなおさらかも
    >>682 のコードの周辺とか中略されているところとか独自バリデーションがあったらそれとか、$user_idとか$this->idの値とかはどうなってるの?
    あと、既存のデータって、どのデータが更新されるの?
    696 : nobodyさん - 2010/09/27(月) 14:31:03 ID:??? (-19,-17,-42)
    SQLダンプがでないって言う件、もしかしてDBの保存処理を行った後に
    別ページにリダイレクトしてない?
    698 : nobodyさん - 2010/09/27(月) 14:35:39 ID:??? (+23,+25,-29)
    もっかいその処理だけのmodelとcontroller書いて試して、だめならうpすればいいんじゃねえの?らちがあかない
    700 : nobodyさん - 2010/09/27(月) 22:30:00 ID:??? (-24,-30,-60)
    $this->モデル名->find('threaded');でツリー表示されますけど、
    これってHTMLに出力すると起動するんですか?
    foreachを再帰する為の関数を作るんでしょうか?
    それとも、Cakeに出力する為のヘルパーがあるのでしょうか?
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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