Skip to content

Commit

Permalink
Updating from symfony-docs (Second part)
Browse files Browse the repository at this point in the history
  • Loading branch information
gregquat committed Nov 3, 2012
1 parent c8cc972 commit 40d9915
Show file tree
Hide file tree
Showing 59 changed files with 1,103 additions and 196 deletions.
5 changes: 5 additions & 0 deletions CONTRIBUTING.md
@@ -0,0 +1,5 @@
Contribution
------------

Nous adorons les contributeurs ! Pour plus d'informations sur ce que vous pouvez apporter
à la documentation de Symfony, veuillez lire [Contribuer à la Documentation](http://symfony.com/fr/doc/current/contributing/documentation/overview.html)
6 changes: 3 additions & 3 deletions README.markdown
Expand Up @@ -7,9 +7,9 @@ Contribuer
----------

>**Note**
>A moins que vous documentiez une fonctionnalité qui est nouvelle dans
>Symfony 2.1, toutes les « pull requests » doivent être basées sur la
>branche **2.0**, **et non pas** sur la branche master.
>A moins que vous ne documentiez une fonctionnalité qui est nouvelle dans
> une sous-version de Symfony 2, toutes les « pull requests » doivent être basées sur la
>branche **2.0**, **et non pas** sur la branche master ou la branche 2.1.
Nous adorons les contributeurs ! Pour plus d'informations sur la manière
dont vous pouvez contribuer à la documentation de Symfony, veuillez lire
Expand Down
22 changes: 11 additions & 11 deletions book/doctrine.rst
Expand Up @@ -69,11 +69,11 @@ habituellement placés dans le fichier ``app/config/parameters.yml`` :
doctrine:
dbal:
driver: %database_driver%
host: %database_host%
dbname: %database_name%
user: %database_user%
password: %database_password%
driver: "%database_driver%"
host: "%database_host%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
En gardant ces paramètres de connexion dans un fichier séparé, vous pouvez
facilement garder différentes versions de ce fichier sur chaque serveur.
Expand Down Expand Up @@ -769,7 +769,7 @@ Pour ce faire, ajouter le nom de la classe dépôt à vos informations de mappin
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass="Acme\StoreBundle\Repository\ProductRepository")
* @ORM\Entity(repositoryClass="Acme\StoreBundle\Entity\ProductRepository")
*/
class Product
{
Expand All @@ -781,7 +781,7 @@ Pour ce faire, ajouter le nom de la classe dépôt à vos informations de mappin
# src/Acme/StoreBundle/Resources/config/doctrine/Product.orm.yml
Acme\StoreBundle\Entity\Product:
type: entity
repositoryClass: Acme\StoreBundle\Repository\ProductRepository
repositoryClass: Acme\StoreBundle\Entity\ProductRepository
# ...
.. code-block:: xml
Expand All @@ -791,7 +791,7 @@ Pour ce faire, ajouter le nom de la classe dépôt à vos informations de mappin
<doctrine-mapping>
<entity name="Acme\StoreBundle\Entity\Product"
repository-class="Acme\StoreBundle\Repository\ProductRepository">
repository-class="Acme\StoreBundle\Entity\ProductRepository">
<!-- ... -->
</entity>
</doctrine-mapping>
Expand All @@ -809,8 +809,8 @@ ordre alphabétique.

.. code-block:: php
// src/Acme/StoreBundle/Repository/ProductRepository.php
namespace Acme\StoreBundle\Repository;
// src/Acme/StoreBundle/Entity/ProductRepository.php
namespace Acme\StoreBundle\Entity;
use Doctrine\ORM\EntityRepository;
Expand Down Expand Up @@ -1158,7 +1158,7 @@ une jointure dans la requête originale. Ajouter le code suivant à la classe

.. code-block:: php
// src/Acme/StoreBundle/Repository/ProductRepository.php
// src/Acme/StoreBundle/Entity/ProductRepository.php
public function findOneByIdJoinedToCategory($id)
{
Expand Down
46 changes: 23 additions & 23 deletions book/forms.rst
Expand Up @@ -230,7 +230,7 @@ fonctionnalité suivante à votre contrôleur :
->add('dueDate', 'date')
->getForm();
if ($request->getMethod() == 'POST') {
if ($request->isMethod('POST')) {
$form->bind($request);
if ($form->isValid()) {
Expand Down Expand Up @@ -471,7 +471,7 @@ Vous pouvez aussi définir une logique entière en utilisant une Closure :
'validation_groups' => function(FormInterface $form) {
$data = $form->getData();
if (Entity\Client::TYPE_PERSON == $data->getType()) {
return array('person')
return array('person');
} else {
return array('company');
}
Expand Down Expand Up @@ -1185,29 +1185,29 @@ balise :

{# src/Acme/TaskBundle/Resources/views/Form/fields.html.twig #}

{% block field_row %}
{% block form_row %}
{% spaceless %}
<div class="form_row">
{{ form_label(form) }}
{{ form_errors(form) }}
{{ form_widget(form) }}
</div>
{% endspaceless %}
{% endblock field_row %}
{% endblock form_row %}

.. code-block:: html+php

<!-- src/Acme/TaskBundle/Resources/views/Form/field_row.html.php -->
<!-- src/Acme/TaskBundle/Resources/views/Form/form_row.html.php -->

<div class="form_row">
<?php echo $view['form']->label($form, $label) ?>
<?php echo $view['form']->errors($form) ?>
<?php echo $view['form']->widget($form, $parameters) ?>
</div>

Le fragment de formulaire ``field_row`` est utilisé pour rendre la plupart
Le fragment de formulaire ``form_row`` est utilisé pour rendre la plupart
des champs via la fonction ``form_row``. Pour dire au composant formulaire
d'utiliser votre nouveau fragment ``field_row`` defini ci-dessus, ajoutez
d'utiliser votre nouveau fragment ``form_row`` defini ci-dessus, ajoutez
ce qui suit en haut du template qui rend le formulaire :

.. configuration-block:: php
Expand Down Expand Up @@ -1235,8 +1235,8 @@ ce qui suit en haut du template qui rend le formulaire :
La balise ``form_theme`` (dans Twig) « importe » les fragments définis dans le
template donné et les utilise lorsqu'il rend le formulaire. En d'autres termes,
quand la fonction ``form_row`` est appelée plus tard dans ce template, elle va
utiliser le bloc ``field_row`` de votre thème personnalisé (à la place du bloc
par défaut ``field_row`` qui est délivré avec Symfony).
utiliser le bloc ``form_row`` de votre thème personnalisé (à la place du bloc
par défaut ``form_row`` qui est délivré avec Symfony).

Votre thème personnalisé n'a pas besoin de surcharger tous les blocks. Lorsqu'il
affiche un block qui n'est pas surchargé par votre thème personnalisé, le moteur de
Expand Down Expand Up @@ -1288,10 +1288,10 @@ sont situés dans le répertoire `Resources/views/Form` du bundle du framework
Chaque nom de fragment suit le même pattern de base et est divisé en deux parties,
séparées par un unique underscore (``_``). Quelques exemples sont :

* ``field_row`` - utilisé par ``form_row`` pour rendre la plupart des champs ;
* ``form_row`` - utilisé par ``form_row`` pour rendre la plupart des champs ;
* ``textarea_widget`` - utilisé par ``form_widget`` pour rendre un champ de
type ``textarea`` ;
* ``field_errors`` - utilisé par ``form_errors`` pour rendre les erreurs d'un champ.
* ``form_errors`` - utilisé par ``form_errors`` pour rendre les erreurs d'un champ.

Chaque fragment suit le même pattern de base : ``type_part``. La partie ``type``
correspond au *type* du champ qui doit être rendu (par exemple : ``textarea``,
Expand All @@ -1300,13 +1300,13 @@ va être rendu (par exemple : ``label``, ``widget``, ``errors``, etc). Par défa
il y a 4 *parts* possibles d'un formulaire qui peuvent être rendues :

+-------------+-----------------------------------+------------------------------------------------------------+
| ``label`` | (par exemple : ``field_label``) | rend le label du champ |
| ``label`` | (par exemple : ``form_label``) | rend le label du champ |
+-------------+-----------------------------------+------------------------------------------------------------+
| ``widget`` | (par exemple : ``field_widget``) | rend la représentation HTML du champ |
| ``widget`` | (par exemple : ``form_widget``) | rend la représentation HTML du champ |
+-------------+-----------------------------------+------------------------------------------------------------+
| ``errors`` | (par exemple : ``field_errors``) | rend les erreurs du champ |
| ``errors`` | (par exemple : ``form_errors``) | rend les erreurs du champ |
+-------------+-----------------------------------+------------------------------------------------------------+
| ``row`` | (par exemple : ``field_row``) | rend la ligne entière du champ (label, widget, et erreurs) |
| ``row`` | (par exemple : ``form_row``) | rend la ligne entière du champ (label, widget, et erreurs) |
+-------------+-----------------------------------+------------------------------------------------------------+

.. note::
Expand All @@ -1328,16 +1328,16 @@ Dans certains cas, le fragment que vous voulez personnaliser sera absent.
Par exemple, il n'y a pas de fragment ``textarea_errors`` dans les thèmes
fournis par défaut par Symfony.

La réponse est : via le fragment ``field_errors``. Quand Symfony rend les erreurs
La réponse est : via le fragment ``form_errors``. Quand Symfony rend les erreurs
d'un champ de type textarea, il recherche en premier un fragment ``textarea_errors``
avant de se replier sur le fragment de secours ``field_errors``. Chaque type de
avant de se replier sur le fragment de secours ``form_errors``. Chaque type de
champ a un type *parent* (le type parent de ``textarea`` est ``field``), et
Symfony l'utilise si le fragment de base n'existe pas.

Donc, afin de réécrire les erreurs pour les champs ``textarea`` *seulement*, copiez
le fragment ``field_errors``, renommez-le en ``textarea_errors`` et personnalisez-le.
le fragment ``form_errors``, renommez-le en ``textarea_errors`` et personnalisez-le.
Pour réécrire le rendu d'erreur par défaut pour *tous* les champs, copiez et personnalisez
le fragment ``field_errors`` directement.
le fragment ``form_errors`` directement.

.. tip::

Expand Down Expand Up @@ -1413,9 +1413,9 @@ maintenant utilisés globalement pour définir le rendu de formulaire en sortie.
{% form_theme form _self %}

{# effectue la personnalisation du fragment de formulaire #}
{% block field_row %}
{% block form_row %}
{# personnalisez le rendu en sortie de la ligne du champ #}
{% endblock field_row %}
{% endblock form_row %}

{% block content %}
{# ... #}
Expand Down Expand Up @@ -1574,7 +1574,7 @@ un tableau des données soumises. C'est en fait très facile :
->add('message', 'textarea')
->getForm();
if ($request->getMethod() == 'POST') {
if ($request->isMethod('POST')) {
$form->bind($request);
// les données sont un tableau avec les clés "name", "email", et "message"
Expand Down Expand Up @@ -1711,6 +1711,6 @@ En savoir plus grâce au Cookbook
.. _`Composant Formulaire Symfony2`: https://github.com/symfony/Form
.. _`DateTime`: http://php.net/manual/en/class.datetime.php
.. _`Twig Bridge`: https://github.com/symfony/symfony/tree/master/src/Symfony/Bridge/Twig
.. _`form_div_layout.html.twig`: https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Resources/views/Form/form_div_layout.html.twig
.. _`form_div_layout.html.twig`: https://github.com/symfony/symfony/blob/2.1/src/Symfony/Bridge/Twig/Resources/views/Form/form_div_layout.html.twig
.. _`Cross-site request forgery`: http://en.wikipedia.org/wiki/Cross-site_request_forgery
.. _`voir sur GitHub`: https://github.com/symfony/symfony/tree/master/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form
8 changes: 4 additions & 4 deletions book/propel.rst
Expand Up @@ -54,10 +54,10 @@ généralement configurées dans un fichier ``app/config/parameters.yml`` :
propel:
dbal:
driver: %database_driver%
user: %database_user%
password: %database_password%
dsn: %database_driver%:host=%database_host%;dbname=%database_name%;charset=%database_charset%
driver: "%database_driver%"
user: "%database_user%"
password: "%database_password%"
dsn: "%database_driver%:host=%database_host%;dbname=%database_name%;charset=%database_charset%"
Maintenant que Propel connaît votre base de données, Symfony2 peut créer cette dernière
pour vous :
Expand Down
16 changes: 10 additions & 6 deletions book/security.rst
Expand Up @@ -1257,8 +1257,9 @@ la base de données? C'est possible en créant un fournisseur qui lie les 2 four
chain_provider:
providers: [in_memory, user_db]
in_memory:
users:
foo: { password: test }
memory:
users:
foo: { password: test }
user_db:
entity: { class: Acme\UserBundle\Entity\User, property: username }
Expand All @@ -1271,7 +1272,9 @@ la base de données? C'est possible en créant un fournisseur qui lie les 2 four
<provider>user_db</provider>
</provider>
<provider name="in_memory">
<user name="foo" password="test" />
<memory>
<user name="foo" password="test" />
</memory>
</provider>
<provider name="user_db">
<entity class="Acme\UserBundle\Entity\User" property="username" />
Expand All @@ -1287,9 +1290,10 @@ la base de données? C'est possible en créant un fournisseur qui lie les 2 four
'providers' => array('in_memory', 'user_db'),
),
'in_memory' => array(
'users' => array(
'foo' => array('password' => 'test'),
),
'memory' => array(
'users' => array(
'foo' => array('password' => 'test'),
),
),
'user_db' => array(
'entity' => array('class' => 'Acme\UserBundle\Entity\User', 'property' => 'username'),
Expand Down
12 changes: 6 additions & 6 deletions book/service_container.rst
Expand Up @@ -188,7 +188,7 @@ simple. Les paramètres rendent les définitions de services plus organisées et
services:
my_mailer:
class: %my_mailer.class%
class: "%my_mailer.class%"
arguments: [%my_mailer.transport%]
.. code-block:: xml
Expand Down Expand Up @@ -359,7 +359,7 @@ ou ``Resources/config`` n'existent pas, créez-les.
services:
my_mailer:
class: %my_mailer.class%
class: "%my_mailer.class%"
arguments: [%my_mailer.transport%]
.. code-block:: xml
Expand Down Expand Up @@ -597,7 +597,7 @@ le conteneur de services nous donne une option beaucoup plus attrayante :
my_mailer:
# ...
newsletter_manager:
class: %newsletter_manager.class%
class: "%newsletter_manager.class%"
arguments: [@my_mailer]
.. code-block:: xml
Expand Down Expand Up @@ -686,7 +686,7 @@ L'injection de la dépendance par la méthode setter a juste besoin d'un changem
my_mailer:
# ...
newsletter_manager:
class: %newsletter_manager.class%
class: "%newsletter_manager.class%"
calls:
- [ setMailer, [ @my_mailer ] ]
Expand Down Expand Up @@ -751,7 +751,7 @@ elle existe et ne rien faire si ce n'est pas le cas :
services:
newsletter_manager:
class: %newsletter_manager.class%
class: "%newsletter_manager.class%"
arguments: [@?my_mailer]
.. code-block:: xml
Expand Down Expand Up @@ -854,7 +854,7 @@ Configurer le conteneur de services est facile :
services:
newsletter_manager:
class: %newsletter_manager.class%
class: "%newsletter_manager.class%"
arguments: [@mailer, @templating]
.. code-block:: xml
Expand Down
7 changes: 4 additions & 3 deletions book/templating.rst
Expand Up @@ -133,15 +133,16 @@ avec Twig et PHP.
designers.

Twig peut aussi faire des choses que PHP ne pourrait pas faire, comme le contrôle
d'espaces blancs, le bac à sable et l'inclusion de fonctions et de filtres personnalisés
qui n'affectent que les templates. Twig contient de petites fonctionnalités qui rendent
d'espaces blancs, le bac à sable, l'échappement de caractères automatique et
contecxtuel et l'inclusion de fonctions et de filtres personnalisés qui n'affectent
que les templates. Twig contient de petites fonctionnalités qui rendent
l'écriture de template plus facile et plus concise. Prenez l'exemple suivant, il
combine une boucle avec l'instruction logique ``if`` :

.. code-block:: html+jinja

<ul>
{% for user in users %}
{% for user in users if user.active %}
<li>{{ user.username }}</li>
{% else %}
<li>Aucun utilisateur trouvé.</li>
Expand Down
2 changes: 1 addition & 1 deletion book/testing.rst
Expand Up @@ -851,7 +851,7 @@ En savoir plus
* :doc:`/cookbook/testing/http_authentication`
* :doc:`/cookbook/testing/insulating_clients`
* :doc:`/cookbook/testing/profiling`

* :doc:`/cookbook/testing/bootstrap`

.. _`DemoControllerTest`: https://github.com/symfony/symfony-standard/blob/master/src/Acme/DemoBundle/Tests/Controller/DemoControllerTest.php
.. _`$_SERVER`: http://php.net/manual/en/reserved.variables.server.php
Expand Down
2 changes: 1 addition & 1 deletion book/validation.rst
Expand Up @@ -227,7 +227,7 @@ au code suivant::
$author = new Author();
$form = $this->createForm(new AuthorType(), $author);

if ($request->getMethod() == 'POST') {
if ($request->isMethod('POST')) {
$form->bind($request);

if ($form->isValid()) {
Expand Down
1 change: 1 addition & 0 deletions components/config/definition.rst
Expand Up @@ -107,6 +107,7 @@ définition de noeud appropriée. Les types de noeud disponibles sont :
* scalar
* boolean
* array
* enum (new in 2.1)
* variable (pas de validation)

et sont créés avec ``node($name, $type)`` ou leurs méthodes raccourcies associées
Expand Down
1 change: 1 addition & 0 deletions components/console/index.rst
Expand Up @@ -6,3 +6,4 @@ Console

introduction
usage
single_command_tool

0 comments on commit 40d9915

Please sign in to comment.