【Laravel4】ViewのNamespaceを登録する
LaravelのViewにはaddNameSpaceというメソッドがあってこれでNameSpaceとViewを読み込むパスの登録を行うことができる。
例えばPC版とSP版のテンプレートファイルも持つ必要があって、それぞれルート直下のpc/、sp/の配下に置いているとすると以下のように書ける。
global.phpとかどこかで
<?php View::addNamespace('pc', base_path('pc')); View::addNamespace('sp', base_path('sp'));
Controllerで
<?php function sample() { if ($this->isPC()) { $namespace = 'pc'; } else { $namespace = 'sp'; } return View::make($namespace . '::sample'); }
これの存在を知らなかったばかりにPC用とスマホ用のView読み込み先の切り替えを行うために 結構な量のコードを書いてもらってしまった。。。