view.yml 設定ファイル
ビューレイヤーのコンフィギュレーションは view.yml
設定ファイルを編集することで変更できます。
設定ファイルの原則の章で説明したように、view.yml
ファイルでは、コンフィギュレーションカスケードのメカニズムがはたらき、定数を定義することができます。
ほとんどの場合、アクションから呼び出されるテンプレートもしくはメソッドで直接使われるヘルパーを尊重するため、この設定ファイルの変更は推奨されません。
view.yml
設定ファイルには、ビュー設定のリストが用意されています:
---
VIEW_NAME_1:
# コンフィギュレーション
VIEW_NAME_2:
# コンフィギュレーション
# ...
view.yml
設定ファイルは PHP ファイルとしてキャッシュされます。処理はsfViewConfigHandler
クラスによって自動管理されます。
layout
デフォルトコンフィギュレーション:
---
default:
has_layout: true
layout: layout
view.yml
設定ファイルでは、アプリケーションによって使われるデフォルトの ~layout
~ を定義します。デフォルトでは、名前は layout
で、symfony はアプリケーションの templates/
ディレクトリに設置されている layout.php
ファイルによってすべてのページを飾りつけます。~has_layout
~ エントリを false
にセットすることで、飾りつけ処理を完全に無効にすることもできます。
view
に対して明示的にセットされていないかぎり、layout
は XML、HTTP リクエストと HTML ではない Content-Type に対して自動的に無効になります。
stylesheets
デフォルトコンフィギュレーション:
---
default:
stylesheets: [main.css]
stylesheets
エントリは現在のビューで使うスタイルシートの配列を定義します。
view.yml
で定義されているスタイルシートを手動でインクルードするには、include_stylesheets()
ヘルパーを使います。
複数のファイルが定義されている場合、symfony はこれらのファイルを定義と同じ順序でインクルードします:
---
stylesheets: [main.css, foo.css, bar.css]
media
属性を変更もしくは .css
拡張子を省略することもできます:
use_stylesheet()
ヘルパーを尊重するために、この設定は推奨されません:
<?php use_stylesheet('main.css') ?>
デフォルトの
view.yml
設定ファイルでは、参照されるファイルはmain.css
であり/css/main.css
ではありません。実際のところ、symfony は相対パスの前に/css/
をつけるので、両方の定義は同じです。
javascripts
デフォルトコンフィギュレーション:
---
default:
javascripts: []
javascripts
エントリは現在のビューに使う JavaScript ファイルの配列を定義します。
view.yml
で定義されている JavaScript ファイルを手動でインクルードするには、include_javascripts()
ヘルパーを使います。
複数のファイルが定義されている場合、symfony は定義と同じ順序でこれらのファイルをインクルードします:
---
javascripts: [foo.js, bar.js]
.js
拡張子を省略することもできます:
---
javascripts: [foo, bar]
use_javascript()
ヘルパーを尊重するために、この設定は推奨されません:
<?php use_javascript('foo.js') ?>
foo.js
のような相対パスを使うとき、symfony はこれらのパスの前に/js/
をつけます。
metas
と http_metas
デフォルトコンフィギュレーション:
---
default:
http_metas:
content-type: text/html
metas:
#title: symfony project
#description: symfony project
#keywords: symfony, project
#language: en
#robots: index, follow
レイアウトのなかでインクルードするメタタグは http_metas
と metas
設定によって定義できます。
view.yml
で定義されているメタタグを手動でインクルードするには、include_metas()
とinclude_http_metas()
ヘルパーを使います。
静的なメタ情報 (Content-Type など) のためのレイアウトのなかで HTML を純粋に保つため、もしくは動的なメタ情報 (タイトルや説明) のスロットを尊重するためにこれらの設定は非推奨です。
設定が反映されるとき、
settings.yml
設定ファイルで定義されている文字集合をインクルードするために、HTTP のContent-Type
のメタ情報は自動的に修正されます。
インデックス
Document Index
関連ページリスト
Related Pages
日本語ドキュメント
Japanese Documents
- 2011/01/18 Chapter 17 - Extending Symfony
- 2011/01/18 The generator.yml Configuration File
- 2011/01/18 Les tâches
- 2011/01/18 Emails
- 2010/11/26 blogチュートリアル(8) ビューの作成
リリース情報
Release Information
- 2.0 : 2.0.15(2011/05/30)
Symfony2日本語ドキュメント - 1.4 : 1.4.18(2012/05/30)
Changelog