恋に落ちるブログを作ってみる2
公開日:
:
FuelPHP
動画は近所のりんご園^^;
前回のmodelに続き今回はviewにつていまとめ。
ファイルの保存場所がmodelやcontrollerが入っているclassesファルダと違う場所なので間違えやすい。ってか間違えてました^^;だってclassesの中にもviewってフォルダがあるし。ちなみにここはViewModelって機能のファイルを置く場所らしいけど。なれないうちは注意しましょう。
VIEWの基本的な部分
まずはviewファイルの書き方。これはcodeignatorなどと同じイメージで普通のHTMLになどと書くだけ。もちろん制御構造も書ける。ただし、あまり使わないほうがスマートなのでforeach以外は基本仕様禁止の方向で。それ以外はViewModelで変換すればいいってことかな?
<?php foreach ($names as $name); ?> <tr><td><?php echo $name; ?></td></tr> <?php endforeach; ?>
controllerからは次のような形で呼び出すのが一般的だ。$dataは配列で、$data[‘name’]=”joji”; と設定しておくのが常識。viewファイル側では単純に $name で受け取れる。スタンダードな配列でデータを渡す方法。下の例ではviewフォルダの中をblogというフォルダで分けてファイルを配置している。つまりフォルダ分けも自由自在ってことだな。
return View::forge('blog/index', $data);
オブジェクトをデータとして渡す事もできる。viewファイル側はどちらの方法でも同じ書き方で問題ないようだ。コントローラー側での書き方が違ってくるだけらしい。複雑な設定・制御をする場合は、こちらのほうが良さそう。まずはコントローラー側のサンプルを見てから詳細を。
$v = View::forge('blog/index'); $v->name = 'joji'; return $v;
呼び出すviewファイルを動的に変化させたいような場合は
$v = View::forge(); $v->filename('blog/index');
というように指定することも可能になっている。「こんなのもあったなぁ〜」程度に覚えておこうっと。そして値の設定方法のバリエーションを。
Case1: $v->name = 'joji'; Case2: $v->set('name', 'joji'); Case3: $names = array(); $names[] = array('id'=>1, 'name'=>'joji'); $names[] = array('id'=>2, 'name'=>'kai'); $v->set('names', $names');
通常と配列を渡す方法でした。他にもあったら追記するよ。そして、その他のデータを渡す例をメモしておく。
FORM: $data['name'] = Input::post('name'); DB1: $data['rows'] = Model->get_data(); // Model DB2: $data['rows'] = Model_Post::find_all(); // Model_Crud
上のデータベース呼び出しの部分は後ほど検証して編集する予定なので信用しないようにしてね。
次回は「CSSや画像のURLをスマートに書くんだ編」です。
PR:: 効率的なWebアプリケーションの作り方 ~PHPによるモダン開発入門
Sponsored Link
関連記事
-
-
きたぁ~~~理想的な動画マシンが登場だ! SONY NEX-FS700
現状考えられる理想に最も近いスペックなんじゃないか?だた一点を除けば。
-
-
今更だけどPanasonic LUMIX GH4の動画撮影用設定を確認
すっかり更新ペースが落ちてしまいました。というのも購入するものがあまりない。キャップとかステップアッ
-
-
肩の上にオーム(GH3)を載せるにはイクラ必要なのか?
リグ関係を購入してみて、やはり自分の知識の無さを実感しています。色々勉強しなくちゃね!とネットを徘徊
-
-
Blackmagic Design DaVinci Resolve Lite 11 Beta 2 をインストール
おぃ! という状況でインストール完了翌日には新バージョンという^^;相変わらずの雨続きなので、今日も
-
-
PM2.5が入って中華より届いた品は Heavens Giftの電子タバコパーツ
いつものように中華より届いた荷物を「なんだっけ?」的に開けてみると、出てきたのは電子タバコの部品やら
ご質問は掲示板へお願いいたします。