Skip to content

Commit 7b444ac

Browse files
committed
Merge pull request #254 from 77web/update-reference-index
reference/index更新、reference/twig_referenceとreference/configuration/kernel追加,cookbook/configuration/override_dir_structure追加,reference/forms/twig_reference翻訳
2 parents 5235652 + 4ee5560 commit 7b444ac

File tree

14 files changed

+811
-32
lines changed

14 files changed

+811
-32
lines changed

book/security.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1298,6 +1298,8 @@ HTTP 認証やフォームログインなどの全ての認証メカニズムは
12981298
12991299
ユーザが一旦ログアウトすると、そのユーザは、上記の ``target`` の値によって定義されたパス(``homepage`` など)にリダイレクトされます。ログアウトの設定に関する詳細は :doc:`Security Configuration Reference</reference/configuration/security>` を参照してください。
13001300

1301+
.. _book-security-template:
1302+
13011303
テンプレートにおけるアクセス制御
13021304
--------------------------------
13031305

book/translation.rst

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -692,9 +692,10 @@ apples`` が使われます。
692692
多くの場合、翻訳はテンプレート内で発生します。 Symfony2 は Twig と PHP テンプレートの
693693
両方をネイティブでサポートします。
694694

695+
.. _book-translation-tags:
696+
695697
Twig テンプレート
696698
~~~~~~~~~~~~~~~~~
697-
698699
Symfony2 はメッセージの翻訳に役立つよう特別な Twig タグ (``trans`` と ``transChoice``)
699700
を提供します。
700701

@@ -724,6 +725,8 @@ Symfony2 はメッセージの翻訳に役立つよう特別な Twig タグ (``t
724725
{0} There is no apples|{1} There is one apple|]1,Inf] There are %count% apples
725726
{% endtranschoice %}
726727
728+
.. _book-translation-filters:
729+
727730
``trans``、``transchoice``フィルターは、*variable texts*や複雑な式を変換するために使用できます。
728731
729732
.. code-block:: jinja

cookbook/configuration/index.rst

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
.. note::
2+
3+
* 対象バージョン:2.3
4+
* 翻訳更新日:2013/11/26
5+
6+
コンフィギュレーション
7+
=========================
8+
9+
.. toctree::
10+
:maxdepth: 2
11+
12+
environments
13+
override_dir_structure
14+
external_parameters
15+
pdo_session_storage
16+
17+
18+
.. front_controllers_and_kernel 未翻訳
19+
.. apache_router 未翻訳
20+
.. web_server_configuration 未翻訳
21+
22+
.. 2013/11/26 77web fe5aa3ba5b9558c37db93c97ac5406d6c04d35ad
Lines changed: 146 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,146 @@
1+
.. index::
2+
single: Override Symfony
3+
4+
.. note::
5+
6+
* 対象バージョン:2.3
7+
* 翻訳更新日:2013/11/26
8+
9+
10+
Symfony のディレクトリ構造をカスタマイズする方法
11+
=====================================================
12+
13+
Symfony には最初からデフォルトのディレクトリ構造があります。このディレクトリ構造は開発者が好きなように変更することができます。
14+
デフォルトのディレクトリ構造は下記のようになっています。
15+
16+
.. code-block:: text
17+
18+
app/
19+
cache/
20+
config/
21+
logs/
22+
...
23+
src/
24+
...
25+
vendor/
26+
...
27+
web/
28+
app.php
29+
...
30+
31+
.. _override-cache-dir:
32+
33+
``cache`` ディレクトリを変更する
34+
--------------------------------
35+
36+
キャッシュのディレクトリは、アプリケーションの ``AppKernel`` クラスの ``getCacheDir`` をオーバーライドすることにより変更できます。::
37+
38+
// app/AppKernel.php
39+
40+
// ...
41+
class AppKernel extends Kernel
42+
{
43+
// ...
44+
45+
public function getCacheDir()
46+
{
47+
return $this->rootDir.'/'.$this->environment.'/cache';
48+
}
49+
}
50+
51+
``$this->rootDir`` は ``app`` ディレクトリへの絶対パスで、 ``$this->environment`` は現在の環境です(例えば、 ``dev`` のような)
52+
上の例では、キャッシュのディレクトリを ``app/{environment}/cache`` に変更しています。
53+
54+
.. caution::
55+
56+
``cache`` ディレクトリは各環境ごとに別々にしておかなくてはいけません。さもないと、予想できない挙動となることがあります。
57+
各環境にはそれぞれの設定ファイルのキャッシュを生成するため、キャッシュファイルを保存するために他とは違うディレクトリが必要なのです。
58+
59+
.. _override-logs-dir:
60+
61+
``logs`` ディレクトリを変更する
62+
-------------------------------
63+
64+
``logs`` ディレクトリを変更する方法は、 ``cache`` ディレクトリを変更するのと同じですが、オーバーライドするメソッドは ``getLogDir`` です。::
65+
66+
// app/AppKernel.php
67+
68+
// ...
69+
class AppKernel extends Kernel
70+
{
71+
// ...
72+
73+
public function getLogDir()
74+
{
75+
return $this->rootDir.'/'.$this->environment.'/logs';
76+
}
77+
}
78+
79+
上の例ではディレクトリのパスを ``app/{environment}/logs`` に変更しています。
80+
81+
``web`` ディレクトリを変更する
82+
------------------------------
83+
84+
``web`` ディレクトリのパスを変更したり移動したりする必要があるなら、フロントコントローラーである ``app.php`` と ``app_dev.php`` にある ``app`` ディレクトリのパスが正しく保たれているだけで大丈夫です。
85+
単に web ディレクトリのディレクトリ名を変更しただけであれば、そのままで構いません。しかし、もしどこかに移動したのなら、フロントコントローラーに含まれるパスを変更しなければなりません。::
86+
87+
require_once __DIR__.'/../Symfony/app/bootstrap.php.cache';
88+
require_once __DIR__.'/../Symfony/app/AppKernel.php';
89+
90+
更に、 ``composer.json`` にある ``extra.symfony-web-dir`` オプションも変更しなければならないでしょう。
91+
92+
.. code-block:: json
93+
94+
{
95+
...
96+
"extra": {
97+
...
98+
"symfony-web-dir": "my_new_web_dir"
99+
}
100+
}
101+
102+
.. tip::
103+
104+
共有ホスティングでは ``public_html`` が公開ディレクトリとして使われることがあります。 ``web`` ディレクトリを ``public_html`` にリネームするのは、共有ホスティングで Symfony プロジェクトを動かす方法の一つです。
105+
別の方法として、アプリケーションを公開ディレクトリ外にデプロイし、 ``public_html`` を削除して、アプリケーションの ``web`` ディレクトリへのシンボリックリンクに置き換えてしまうという方法もあります。
106+
107+
.. note::
108+
109+
AsseticBundle を使っている場合は、バンドルが ``web`` ディレクトリを正しく使えるように下記の設定も必要です。
110+
111+
.. configuration-block::
112+
113+
.. code-block:: yaml
114+
115+
# app/config/config.yml
116+
117+
# ...
118+
assetic:
119+
# ...
120+
read_from: "%kernel.root_dir%/../../public_html"
121+
122+
.. code-block:: xml
123+
124+
<!-- app/config/config.xml -->
125+
126+
<!-- ... -->
127+
<assetic:config read-from="%kernel.root_dir%/../../public_html" />
128+
129+
.. code-block:: php
130+
131+
// app/config/config.php
132+
133+
// ...
134+
$container->loadFromExtension('assetic', array(
135+
// ...
136+
'read_from' => '%kernel.root_dir%/../../public_html',
137+
));
138+
139+
設定を変更したら、再度アセットをダンプするだけで、アプリケーションを使うことができます。
140+
141+
.. code-block:: bash
142+
143+
$ php app/console assetic:dump --env=prod --no-debug
144+
145+
146+
.. 2013/12/09 77web 1f7898045f3f1ad06dc63f32f4d921519fc5e3d7

cookbook/index.rst

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,7 @@
66

77
email
88
gmail
9-
configuration/environments
10-
configuration/pdo_session_storage
11-
configuration/external_parameters
9+
configuration/index
1210
templating/PHP
1311
controller/error_pages
1412
controller/service

cookbook/map.rst.inc

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,19 @@
4646
* :doc:`/cookbook/validation/custom_constraint`
4747
* (doctrine) :doc:`/cookbook/doctrine/file_uploads`
4848

49-
* **コンフィギュレーションとサービスコンテナ**
49+
* **コンフィギュレーション**
5050

5151
* :doc:`/cookbook/configuration/environments`
52+
* :doc:`/cookbook/configuration/override_dir_structure`
5253
* :doc:`/cookbook/configuration/external_parameters`
54+
* :doc:`/cookbook/configuration/pdo_session_storage`
55+
56+
* **サービスコンテナ**
57+
5358
* :doc:`/cookbook/service_container/factories`
5459
* :doc:`/cookbook/service_container/parentservices`
5560
* :doc:`/cookbook/service_container/scopes`
5661
* :doc:`/cookbook/service_container/tags`
57-
* :doc:`/cookbook/configuration/pdo_session_storage`
5862

5963
* **バンドル**
6064

reference/YAML.rst

Lines changed: 0 additions & 5 deletions
This file was deleted.

reference/configuration/kernel.rst

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
.. index::
2+
single: Configuration reference; Kernel class
3+
4+
.. note::
5+
6+
* 対象バージョン : 2.3(2.1以降)
7+
* 翻訳更新日 : 2013/11/25
8+
9+
カーネルの設定(例えば AppKernel)
10+
==========================================
11+
12+
設定の中にはカーネルクラス自体によって行うことができるものもあります。(カーネルクラスは通常 ``app/AppKernel.php`` にあります) 設定のカスタマイズは、継承元の :class:`Symfony\\Component\\HttpKernel\\Kernel` クラスの特定のメソッドをオーバーライドすることで実現できます。
13+
14+
設定
15+
-------------
16+
17+
* `キャラクタセット`_
18+
* `カーネル名`_
19+
* `ルートディレクトリ`_
20+
* `キャッシュディレクトリ`_
21+
* `ログディレクトリ`_
22+
23+
キャラクタセット
24+
~~~~~~~~~~~~~~~~~
25+
26+
**type**: ``string`` **default**: ``UTF-8``
27+
28+
アプリケーションで使用されるキャラクタセットです。キャラクタセットを変更するには、 :method:`Symfony\\Component\\HttpKernel\\Kernel::getCharset` メソッドをオーバーライドし、別のキャラクタセットを返すように変更します。たとえば下記のようにします。::
29+
30+
// app/AppKernel.php
31+
32+
// ...
33+
class AppKernel extends Kernel
34+
{
35+
public function getCharset()
36+
{
37+
return 'ISO-8859-1';
38+
}
39+
}
40+
41+
カーネル名
42+
~~~~~~~~~~~
43+
44+
**type**: ``string`` **default**: ``app`` (カーネルクラスが配置されているディレクトリ名)
45+
46+
設定を変更するには、 :method:`Symfony\\Component\\HttpKernel\\Kernel::getName` メソッドをオーバーライドしてください。或いは、カーネルクラスを他のディレクトリに移動しても良いです。
47+
たとえば、カーネルを ``app`` から ``foo`` ディレクトリに移動すると、カーネル名は ``foo`` になります。
48+
49+
カーネル名は、通常は直接問題になることはありません。キャッシュファイルの生成に使われるだけだからです。
50+
カーネルを複数使用するアプリケーションを作る場合、一番簡単な方法は ``app`` ディレクトリをコピーしてディレクトリ名を変更することです。( ``foo`` のようなディレクトリ名に)
51+
52+
ルートディレクトリ
53+
~~~~~~~~~~~~~~~~~~~~
54+
55+
**type**: ``string`` **default**: ``AppKernel`` のディレクトリ
56+
57+
カーネルのルートディレクトリを返します。 Symfony Standard edition の場合、ルートディレクトリは ``app`` ディレクトリを指しています。
58+
59+
設定を変更するには、 :method:`Symfony\\Component\\HttpKernel\\Kernel::getRootDir` メソッドをオーバーライドします。::
60+
61+
// app/AppKernel.php
62+
63+
// ...
64+
class AppKernel extends Kernel
65+
{
66+
// ...
67+
68+
public function getRootDir()
69+
{
70+
return realpath(parent::getRootDir().'/../');
71+
}
72+
}
73+
74+
キャッシュディレクトリ
75+
~~~~~~~~~~~~~~~~~~~~~~~
76+
77+
**type**: ``string`` **default**: ``$this->rootDir/cache/$this->environment``
78+
79+
キャッシュディレクトリのパスを返します。設定を変更するには、 :method:`Symfony\\Component\\HttpKernel\\Kernel::getCacheDir` メソッドをオーバーライドしてください。
80+
詳しくは、 ":ref:`override-cache-dir`" を参照してください。
81+
82+
83+
ログディレクトリ
84+
~~~~~~~~~~~~~~~~~~
85+
86+
**type**: ``string`` **default**: ``$this->rootDir/logs``
87+
88+
ログディレクトリのパスを返します。設定を変更するには、 :method:`Symfony\\Component\\HttpKernel\\Kernel::getLogDir` メソッドをオーバーライドしてください。
89+
詳しくは ":ref:`override-logs-dir`" を参照してください。
90+
91+
.. 2013/11/26 77web 4346f75f05a5ee010d0148ea251e99c7f6a02c38

reference/configuration/mongodb.rst

Lines changed: 0 additions & 5 deletions
This file was deleted.

0 commit comments

Comments
 (0)