0

Kohana 3 では、次のようにbootstrap.php定義できますbase_url

Kohana::init(array(
    'base_url'   => '/foo/',
));

これは通常/js/、やその他のメディアを,/css/のようなベース ディレクトリに移動することも意味します。私の質問は、そのようなものの良し悪しについて議論することではありません。/foo/js//foo/css/

テンプレートからbase_urlにアクセスする方法が Kohana に組み込まれていますか( Djangoのように使用できます)?{{ MEDIA_URL }}css/

4

2 に答える 2

6

以下を使用してベース URL を出力できますURL::base

<?php echo URL::base(); ?>

おそらく必要な相対URLを出力している場合URL::site

<?php echo URL::site('css/'); ?>

Kohana 3 テンプレート コントローラーは、View クラスを使用してテンプレートをレンダリングします。ビューは通常の php ファイルであり、特別な構文はないため、<?php ... ?>上記の通常のタグを使用してください。View クラスを使用すると、ビューをレンダリングする前に、そのビューで使用する変数を宣言できます。

于 2010-09-24T10:50:36.537 に答える
2

良い方法の 1 つは、レイアウト ビューで、HTML の head 内の<title>タグの近くに配置することです。

<base href="<?php echo URL::base(TRUE) ?>">

次に、次の方法でアセットをロードします。

<img src="assets/images/img.jpg" alt="">

HTML<base>タグは、ページ内のすべてのアセットのベース URL を定義する方法です。このようにして、すべてのタグで呼び出し/foo/assets/images/img.jpgを行うことなく、にある画像をロードします。URL::base()お役に立てば幸いです。

于 2011-09-14T20:39:55.293 に答える