恋に落ちるブログを作ってみる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
関連記事
-
CeVIO Creative StudioがMacのWin10で認証失敗
久しぶりに更新できました。 この時期は寒くて...と言い訳から入りますが、実は新プロジェクトを
-
ぶっちぎりだぜ!Panasonicと気になるニュースのメモ
ブラシレスジンバルのモニターをスマートフォンでプレビューしようとGH3のWiFi接続に挑戦しています
-
SimpleBGC_GUI_2_41b5 イマイチな設定での撮影テスト
日差しが出ると夏が近い感じになりますね。今年は冷夏だという話もあったのですが、そんなことは忘れたよう
-
freetel priori2 に480円 sim を入れて1ヶ月ほど使ってみた感想(追記:4ヶ月後の不具合)
2015年1月末頃購入してみたfreetel フリーテル SIMフリー スマートフォン priori
-
Smallrig DSLR Cage のアレンジ
マイク関係はお盆休みのためか問い合わせても返信無し。しかたがないのでリグ遊び。マイクを買うことを前提
ご質問は掲示板へお願いいたします。