Skip to content

Commit 82a305b

Browse files
committed
Documentos actualizados hasta el 16/04
1 parent 0f79818 commit 82a305b

File tree

435 files changed

+42536
-1865
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

435 files changed

+42536
-1865
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
_static/logo-composer-transparent.png
2+
_static/logo_silex.png
3+
_static/twig-logo.png

_sources/book/controller.txt

Lines changed: 590 additions & 0 deletions
Large diffs are not rendered by default.

_sources/book/doctrine.txt

Lines changed: 1114 additions & 0 deletions
Large diffs are not rendered by default.

_sources/book/forms.txt

Lines changed: 1309 additions & 0 deletions
Large diffs are not rendered by default.

_sources/book/from_flat_php_to_symfony2.txt

Lines changed: 616 additions & 0 deletions
Large diffs are not rendered by default.

_sources/book/http_cache.txt

Lines changed: 753 additions & 0 deletions
Large diffs are not rendered by default.

_sources/book/http_fundamentals.txt

Lines changed: 385 additions & 0 deletions
Large diffs are not rendered by default.

_sources/book/index.txt

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
Libro
2+
=====
3+
4+
.. toctree::
5+
:hidden:
6+
7+
http_fundamentals
8+
from_flat_php_to_symfony2
9+
installation
10+
page_creation
11+
controller
12+
routing
13+
templating
14+
doctrine
15+
testing
16+
validation
17+
forms
18+
security
19+
http_cache
20+
translation
21+
service_container
22+
performance
23+
internals
24+
stable_api
25+
26+
.. include:: /book/map.rst.inc

_sources/book/installation.txt

Lines changed: 182 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,182 @@
1+
.. index::
2+
single: Instalando
3+
4+
Instalando y configurando *Symfony*
5+
===================================
6+
7+
El objetivo de este capítulo es empezar a trabajar con una aplicación funcionando incorporada en lo alto de *Symfony*. Afortunadamente, *Symfony* dispone de "distribuciones", que son proyectos *Symfony* funcionales desde el "arranque", los cuales puedes descargar y comenzar a desarrollar inmediatamente.
8+
9+
.. tip::
10+
11+
Si estás buscando instrucciones sobre la mejor manera de crear un nuevo proyecto y guardarlo vía el control de código fuente, consulta `Usando control de código fuente`_.
12+
13+
Descargando una distribución de *Symfony2*
14+
------------------------------------------
15+
16+
.. tip::
17+
18+
En primer lugar, comprueba que tienes instalado y configurado un servidor web (como *Apache*) con *PHP 5.3.2* o superior. Para más información sobre los requisitos de *Symfony2*, consulta los :doc:`requisitos en la referencia </reference/requirements>`.
19+
Para más información sobre la configuración de la raíz de documentos de tu servidor web específico, consulta la siguiente documentación: `Apache`_ | `Nginx`_ .
20+
21+
Los paquetes de las "distribuciones" de *Symfony2*, son aplicaciones totalmente funcionales que incluyen las bibliotecas del núcleo de *Symfony2*, una selección de útiles paquetes, una sensible estructura de directorios y alguna configuración predeterminada. Al descargar una distribución *Symfony2*, estás descargando el esqueleto de una aplicación funcional que puedes utilizar inmediatamente para comenzar a desarrollar tu aplicación.
22+
23+
Empieza por visitar la página de descarga de *Symfony2* en `http://symfony.com/download`_.
24+
En esta página, puedes encontrar la *edición estándar de Symfony*, que es la distribución principal de *Symfony2*. En este caso, necesitas hacer dos elecciones:
25+
26+
* Descargar o bien un archivo ``.tgz`` o ``.zip`` --- ambos son equivalentes, descarga aquel con el que te sientas más cómodo;
27+
28+
* Descargar la distribución con o sin ``vendors``. Si tienes instalado `Git`_ en tu ordenador, debes descargar *Symfony2* ``"sin vendors"``, debido a que esto añade un poco más de flexibilidad cuando incluyas bibliotecas de terceros.
29+
30+
Descarga uno de los archivos en algún lugar bajo el directorio raíz de tu servidor web local y descomprímelo. Desde una línea de ordenes de UNIX, esto se puede hacer con una de las siguientes ordenes (sustituye ``###`` con el nombre del archivo real):
31+
32+
.. code-block:: bash
33+
34+
# para un archivo .tgz
35+
tar zxvf Symfony_Standard_Vendors_2.0.###.tgz
36+
37+
# para un archivo .zip
38+
unzip Symfony_Standard_Vendors_2.0.###.zip
39+
40+
Cuando hayas terminado, debes tener un directorio ``Symfony/`` que se ve algo como esto:
41+
42+
.. code-block:: text
43+
44+
www/ <- tu directorio raíz del servidor web
45+
Symfony/ <- el archivo extraído
46+
app/
47+
cache/
48+
config/
49+
logs/
50+
src/
51+
...
52+
vendor/
53+
...
54+
web/
55+
app.php
56+
...
57+
58+
.. _installation-updating-vendors:
59+
60+
Actualizando ``vendors``
61+
~~~~~~~~~~~~~~~~~~~~~~~~
62+
63+
Paso 1: Consigue `Composer`_ (El nuevo gran sistema de empacado *PHP*)
64+
65+
.. code-block:: bash
66+
67+
curl -s http://getcomposer.org/installer | php
68+
69+
Asegúrate de descargar :file:`composer.phar` en el mismo directorio dónde se encuentra el archivo :file:`composer.json` (este, por omisión, es el directorio raíz de tu proyecto *Symfony*).
70+
71+
Paso 2: Instala las bibliotecas de terceros
72+
73+
.. code-block:: bash
74+
75+
php composer.phar install
76+
77+
Esta orden descarga todas las bibliotecas de terceros necesarias ---incluyendo al mismo *Symfony*--- en el directorio :file:`vendor/`.
78+
79+
.. note::
80+
81+
Si no tienes instalado ``curl``, simplemente puedes descargar el archivo ``instalador`` manualmente de http://getcomposer.org/installer. Coloca ese archivo en tu proyecto y luego ejecuta:
82+
83+
.. code-block:: bash
84+
85+
php installer
86+
php composer.phar install
87+
88+
Instalando y configurando
89+
~~~~~~~~~~~~~~~~~~~~~~~~~
90+
91+
En este punto, todas las bibliotecas de terceros necesarias ahora viven en el directorio :file:`vendor/`. También tienes una instalación predeterminada de la aplicación en :file:`app/` y algunos ejemplos de código dentro de :file:`src/`.
92+
93+
*Symfony2* viene con una interfaz visual para probar la configuración del servidor, muy útil para ayudarte a solucionar problemas relacionados con la configuración de tu servidor web y *PHP* para utilizar *Symfony*. Usa la siguiente *URL* para examinar tu configuración:
94+
95+
.. code-block:: text
96+
97+
http://localhost/Symfony/web/config.php
98+
99+
Si hay algún problema, corrígelo antes de continuar.
100+
101+
.. sidebar:: Configurando permisos
102+
103+
Un problema común es que ambos directorios ``app/cache`` y ``app/logs`` deben tener permiso de escritura, tanto para el servidor web cómo para la línea de ordenes del usuario. En un sistema UNIX, si el usuario del servidor web es diferente de tu usuario de línea de ordenes, puedes ejecutar las siguientes ordenes una sola vez en el proyecto para garantizar que los permisos se configuran correctamente. Cambia ``www-data`` por el usuario de tu servidor *web*:
104+
105+
**1. Usando ACL en un sistema que admite chmod +a**
106+
107+
Muchos sistemas te permiten utilizar la orden chmod +a. Intenta esto primero, y si se produce un error --- intenta el siguiente método:
108+
109+
.. code-block:: bash
110+
111+
rm -rf app/cache/*
112+
rm -rf app/logs/*
113+
114+
sudo chmod +a "www-data allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
115+
sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
116+
117+
**2. Usando ACL en un sistema que no es compatible con chmod +a**
118+
119+
Algunos sistemas, no son compatibles con ``chmod +a``, pero son compatibles con otra utilidad llamada ``setfacl``. Posiblemente tengas que habilitar la `compatibilidad con ACL`_ en tu partición e instalar :dfn:`setfacl` antes de usarlo (como es el caso de *Ubuntu*), así:
120+
121+
.. code-block:: bash
122+
123+
sudo setfacl -R -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs
124+
sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs
125+
126+
**3. Sin usar ACL**
127+
128+
Si no tienes acceso para modificar los directorios *ACL*, tendrás que cambiar la ``umask`` para que los directorios ``cache/`` y ``logs/`` se puedan escribir por el grupo o por cualquiera (dependiendo de si el usuario del servidor web y el usuario de la línea de ordenes están en el mismo grupo o no). Para ello, pon la siguiente línea al comienzo de los archivos ``app/console``, ``web/app.php`` y ``web/app_dev.php``:
129+
130+
.. code-block:: php
131+
132+
umask(0002); // Esto permitirá que los permisos sean 0775
133+
134+
// o
135+
136+
umask(0000); // Esto permitirá que los permisos sean 0777
137+
138+
Ten en cuenta que el uso de *ACL* se recomienda cuando tienes acceso a ellos en el servidor porque cambiar la ``umask`` no es seguro en subprocesos.
139+
140+
Cuando todo esté listo, haz clic en el enlace "Visita la página de Bienvenida" para ver tu primer aplicación "real" en *Symfony2*:
141+
142+
.. code-block:: text
143+
144+
http://localhost/Symfony/web/app_dev.php/
145+
146+
¡*Symfony2* debería darte la bienvenida y felicitarte por tu arduo trabajo hasta el momento!
147+
148+
.. image:: /images/quick_tour/welcome_es.jpg
149+
150+
Empezando a desarrollar
151+
-----------------------
152+
153+
Ahora que tienes una aplicación *Symfony2* completamente funcional, ¡puedes comenzar el desarrollo! Tu distribución puede contener algún código de ejemplo ---revisa el archivo :file:`README.rst` incluido con la distribución (ábrelo como un archivo de texto) para saber qué código de ejemplo incluye tu distribución y cómo lo puedes eliminar más tarde.
154+
155+
Si eres nuevo en *Symfony*, alcánzanos en ":doc:`page_creation`", donde aprenderás a crear páginas, cambiar la configuración, y todo lo demás que necesitas en tu nueva aplicación.
156+
157+
Usando control de código fuente
158+
-------------------------------
159+
160+
Si estás utilizando un sistema de control de versiones como ``Git`` o ``Subversion``, puedes configurar tu sistema de control de versiones y empezar a confirmar cambios al proyecto normalmente. La *edición estándar de Symfony* **es** el punto de partida para tu nuevo proyecto.
161+
162+
Para instrucciones específicas sobre la mejor manera de configurar el proyecto para almacenarlo en *git*, consulta :doc:`/cookbook/workflow/new_project_git`.
163+
164+
Ignorando el directorio :file:`vendor/`
165+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
166+
167+
Si has descargado el archivo *sin proveedores*, puedes omitir todo el directorio :file:`vendor/` y no confirmarlo al control de versiones. Con ``Git``, esto se logra creando un archivo :file:`.gitignore` y añadiendo lo siguiente:
168+
169+
.. code-block:: text
170+
171+
vendor/
172+
173+
Ahora, el directorio de proveedores no será confirmado al control de versiones. Esto está muy bien (en realidad, ¡es genial!) porque cuando alguien más clone o coteje el proyecto, él/ella simplemente puede ejecutar el archivo ``php composer.phar install`` para descargar todas las bibliotecas de proveedores necesarias.
174+
175+
.. _`compatibilidad con ACL`: https://help.ubuntu.com/community/FilePermissionsACLs
176+
.. _`http://symfony.com/download`: http://symfony.com/download
177+
.. _`Git`: http://git-scm.com/
178+
.. _`GitHub Bootcamp`: http://help.github.com/set-up-git-redirect
179+
.. _`Composer`: http://getcomposer.org/
180+
.. _`Apache`: http://httpd.apache.org/docs/current/mod/core.html#documentroot
181+
.. _`Nginx`: http://wiki.nginx.org/HttpCoreModule#root
182+

0 commit comments

Comments
 (0)