Skip to content

Commit 9ed6577

Browse files
authored
Spanish Translation (#49)
1 parent 188c20e commit 9ed6577

Some content is hidden

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

56 files changed

+7421
-0
lines changed

guide/es/README.md

+180
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,180 @@
1+
# La Guía Definitiva de Yii 3.0
2+
3+
Esta guía se publica bajo los [Términos de documentación de Yii](http://www.yiiframework.com/doc/terms/).
4+
5+
Introducción
6+
------------
7+
8+
* [Acerca de Yii](intro/what-is-yii.md)
9+
* [Actualizar desde la Version 2.0](intro/upgrade-from-v2.md)
10+
11+
12+
Primeros Pasos
13+
---------------
14+
15+
* [Qué Necesitas Saber](start/prerequisites.md)
16+
* [Instalación de Yii](start/installation.md)
17+
* [Ejecutando Aplicaciones](start/workflow.md)
18+
* [Hola Mundo](start/hello.md)
19+
* [Trabajar con Formularios](start/forms.md)
20+
* [Trabajar con Bases de Datos](start/databases.md)
21+
* [Generación de Código con Gii](start/gii.md)
22+
* [Adentrarse en Yii](start/looking-ahead.md)
23+
24+
25+
Estructura De Una Aplicación
26+
---------------------
27+
28+
* [Información General de Estructura de Una Aplicación](structure/overview.md)
29+
* [Scripts de Entrada](structure/entry-script.md)
30+
* [Applicación](structure/application.md)
31+
* [Componentes de Servicios](structure/service.md)
32+
* [Acciones](structure/action.md)
33+
* [Dominio](structure/domain.md)
34+
* [Lógica de Intercambio (middleware)](structure/middleware.md)
35+
* [Paquetes](structure/package.md)
36+
37+
Conceptos Clave
38+
------------
39+
40+
* [Autocarga de Clases (Autoloading)](concept/autoloading.md)
41+
* [Contenedor de Inyección de Dependencia](concept/di-container.md)
42+
* [Configuración](concept/configuration.md)
43+
* [Alias](concept/aliases.md)
44+
* [Eventos](concept/events.md)
45+
46+
Gestión de las Peticiones
47+
-----------------
48+
49+
* [Información General de Gestión de las Peticiones](runtime/overview.md)
50+
* [Bootstrapping](runtime/bootstrapping.md)
51+
* [Enrutamiento y Creación de las URL](runtime/routing.md)
52+
* [Peticiones (Requests)](runtime/request.md)
53+
* [Respuestas (Responses)](runtime/response.md)
54+
* [Sesiones (Sessions)](runtime/sessions.md)
55+
* [Cookies](runtime/cookies.md)
56+
* [Mensajes Flash](runtime/flash-messages.md)
57+
* [Manejo de Errores](runtime/handling-errors.md)
58+
* [Registros (logs)](runtime/logging.md)
59+
60+
Vistas
61+
-----
62+
63+
* [Vistas](views/view.md)
64+
* [Widgets](views/widget.md)
65+
* [Assets](views/asset.md)
66+
* [Trabajando con Scripts de Cliente](views/client-scripts.md)
67+
* [Temas](views/theming.md)
68+
* [Motores de Plantillas](views/template-engines.md)
69+
70+
71+
Trabajar con Bases de Datos
72+
----------------------
73+
74+
* [Objeto de Acceso a Datos](db-dao.md): Conexión a una base de datos, consultas básicas, transacciones y manipulación de esquemas
75+
* [Constructor de Consultas](db-query-builder.md): Consulta de la base de datos utilizando una capa simple de abstracción
76+
* [Active Record](db-active-record.md): ORM Active Record, recuperación y manipulación de registros y definición de relaciones
77+
* [Migraciones](db-migrations.md): Control de versiones de bases de datos en el entorno de desarrollo en equipo
78+
79+
Obtener Datos de los Usuarios
80+
-----------------------
81+
82+
* [Crear Formularios](input/forms.md)
83+
* [Validar Datos](input/validation.md)
84+
* [Carga de Archivos](input/file-upload.md)
85+
* [Obtener Datos de Formularios Tabulados (Tabular Input)](input/tabular-input.md)
86+
87+
88+
Visualizar Datos
89+
---------------
90+
91+
* [Formato de Datos](output/formatting.md)
92+
* [Paginación](output/pagination.md)
93+
* [Ordenamiento](output/sorting.md)
94+
* [Proveedores de Datos](output/data-providers.md)
95+
* [Widgets de Datos](output/data-widgets.md)
96+
97+
Seguridad-
98+
--------
99+
100+
* [Información General de Seguridad](security/overview.md)
101+
* [Autenticación](security/authentication.md)
102+
* [Autorización](security/authorization.md)-
103+
* [Trabajar con Contraseñas](security/passwords.md)
104+
* [Criptografía](security/cryptography.md)
105+
* [Buenas Prácticas](security/best-practices.md)
106+
107+
108+
Caché
109+
-------
110+
111+
* [Información General de Caché](caching/overview.md)
112+
* [Caché de Datos](caching/data.md)
113+
* [Caché de Fragmentos](caching/fragment.md)
114+
* [Caché de Páginas](caching/page.md)
115+
* [Caché HTTP](caching/http.md)
116+
117+
118+
Servicios Web RESTful
119+
--------------------
120+
121+
* [Inicio Rápido](rest/quick-start.md)
122+
* [Recursos](rest/resources.md)
123+
* [Controladores](rest/controllers.md)
124+
* [Enrutamiento](rest/routing.md)
125+
* [Autentificación](rest/authentication.md)
126+
* [Límite de Solicitudes por Cliente (Rate Limiting)](rest/rate-limiting.md)
127+
* [Gestión de Versiones](rest/versioning.md)
128+
* [Manejo de Errores](rest/error-handling.md)
129+
130+
Herramientas de Desarrollo
131+
-----------------
132+
133+
* [Depurador y Barra de Herramientas de Depuración](https://www.yiiframework.com/extension/yiisoft/yii2-debug/doc/guide)
134+
* [Generación de Código con Gii](https://www.yiiframework.com/extension/yiisoft/yii2-gii/doc/guide)
135+
* [Generación de Documentación de API](https://www.yiiframework.com/extension/yiisoft/yii2-apidoc)
136+
137+
138+
Pruebas (Testing)
139+
-------
140+
141+
* [Información General de Pruebas](testing/overview.md)
142+
* [Configuración del Entorno de Pruebas](testing/environment-setup.md)
143+
* [Pruebas Unitarias](testing/unit.md)
144+
* [Pruebas Funcionales](testing/functional.md)
145+
* [Pruebas de Aceptación](testing/acceptance.md)
146+
* [Datos de Prueba (Fixtures)](testing/fixtures.md)
147+
148+
149+
Temas Especiales
150+
--------------
151+
152+
* [Creación de una Aplicación Desde Cero](tutorial/start-from-scratch.md)
153+
* [Comandos de Consola](tutorial/console-applications.md)
154+
* [Docker](tutorial/docker.md)
155+
* [Internacionalización](tutorial/i18n.md)
156+
* [Envío de Correos Electrónicos](tutorial/mailing.md)
157+
* [Ajustes de Rendimiento](tutorial/performance-tuning.md)
158+
* [Utilizar Yii con Bucle de Eventos](tutorial/using-with-event-loop.md)
159+
* [Utilizar Yii con RoadRunner](tutorial/using-yii-with-roadrunner.md)
160+
161+
Widgets
162+
-------
163+
164+
* [GridView](https://www.yiiframework.com/doc-2.0/yii-grid-gridview.html)
165+
* [ListView](https://www.yiiframework.com/doc-2.0/yii-widgets-listview.html)
166+
* [DetailView](https://www.yiiframework.com/doc-2.0/yii-widgets-detailview.html)
167+
* [ActiveForm](https://www.yiiframework.com/doc-2.0/guide-input-forms.html#activerecord-based-forms-activeform)
168+
* [Menu](https://www.yiiframework.com/doc-2.0/yii-widgets-menu.html)
169+
* [LinkPager](https://www.yiiframework.com/doc-2.0/yii-widgets-linkpager.html)
170+
* [LinkSorter](https://www.yiiframework.com/doc-2.0/yii-widgets-linksorter.html)
171+
* [Bootstrap Widgets](https://www.yiiframework.com/extension/yiisoft/yii2-bootstrap/doc/guide)
172+
173+
174+
Clases Auxiliares
175+
-------
176+
177+
* [Información General de Clases Auxiliares](helper-overview.md)
178+
* [ArrayHelper](helper/array.md)
179+
* [Html](helper-html.md)
180+
* [Url](helper-url.md)

guide/es/concept/aliases.md

+114
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
# Alias
2+
3+
Los alias son utilizados para representar rutas o URLs de manera que no tengas que escribir explícitamente rutas absolutas o URLs en tu
4+
proyecto. Un alias debe comenzar con el signo `@` para ser diferenciado de una ruta normal de archivo y de URLs. Los alias definidos
5+
sin el `@` del principio, serán prefijados con el signo `@`.
6+
7+
Yii incluye varios alias predefinidos en `config/params.php`. Por ejemplo, el alias `@src` representa la ruta de instalación de la aplicación en la carpeta `src`; `@web` representa la URL base para la aplicación Web ejecutándose.
8+
9+
## Definir Alias <span id="defining-aliases"></span>
10+
11+
Puedes definir un alias mediante la aplicación en `config/params.php`:
12+
13+
```php
14+
return [
15+
// ...
16+
17+
'aliases' => [
18+
// un alias de una ruta de archivos
19+
'@foo' => '/path/to/foo',
20+
21+
// un alias de un URL
22+
'@bar' => 'http://www.example.com',
23+
24+
// un alias de un archivo en concreto que contiene la clase \foo\Bar
25+
'@foo/Bar.php' => '/definitely/not/foo/Bar.php',
26+
]
27+
];
28+
```
29+
30+
> Nota: Una ruta de archivo o URL en alias *no* se refiere necesariamente a un archivo o recurso existente.
31+
32+
Dado un alias, puedes derivar un nuevo alias anexando una barra diagonal `/` seguida por uno o varios segmentos de la ruta.
33+
Por ejemplo, `@foo` es un alias de raíz, mientras que `@foo/bar/file.php` es un alias derivado.
34+
35+
Puedes definir un alias usando otro alias (ya sea un alias de raíz o derivado):
36+
37+
```php
38+
'@foobar' => '@foo/bar',
39+
```
40+
41+
El parámetro `aliases` inicializa el servicio `Aliases` desde el [paquete `yiisoft/aliases`](https://github.com/yiisoft/aliases).
42+
Puedes agregar alias adicionales en tiempo de ejecución usando el servicio:
43+
44+
```php
45+
use \Yiisoft\Aliases\Aliases;
46+
47+
public function actionIndex(Aliases $aliases)
48+
{
49+
$aliases->set('@uploads', '@root/uploads');
50+
}
51+
```
52+
53+
## Resolución de Alias <span id="resolving-aliases"></span>
54+
55+
Puedes utilizar el servicio `Aliases` para resolver un alias o un alias derivado a la ruta de archivo o URL que representa:
56+
57+
```php
58+
use \Yiisoft\Aliases\Aliases;
59+
60+
public function actionIndex(Aliases $aliases)
61+
{
62+
$foo = $aliases->get('@foo'); // /path/to/foo
63+
$bar = $aliases->get('@bar'); // http://www.example.com
64+
$file = $aliases->get('@foo/bar/file.php'); // /path/to/foo/bar/file.php
65+
}
66+
```
67+
68+
La ruta de archivo/URL representado por un alias derivado está determinado por la sustitución de la parte de su alias raíz con su correspondiente ruta/Url en el alias derivado.
69+
70+
> Nota: El método `get()` no comprueba si la ruta/URL resultante hacer referencia a un archivo o recurso existente.
71+
72+
A root alias may also contain slash `/` characters. The `get()` method
73+
is intelligent enough to tell, which part of an alias is a root alias and thus correctly determines
74+
the corresponding file path or URL:
75+
76+
Un alias de raíz puede contener carácteres `/`.
77+
El método `get()` es lo suficientemente inteligente para saber qué parte de un alias es un alias de raíz y por lo tanto determinar correctamente la correspondiente ruta de archivo o URL. Por ejemplo:
78+
79+
```php
80+
use \Yiisoft\Aliases\Aliases;
81+
82+
public function actionIndex(Aliases $aliases)
83+
{
84+
$aliases->set('@foo', '/path/to/foo');
85+
$aliases->set('@foo/bar', '/path2/bar');
86+
87+
$aliases->get('@foo/test/file.php'); // /path/to/foo/test/file.php
88+
$aliases->get('@foo/bar/file.php'); // /path2/bar/file.php
89+
}
90+
```
91+
92+
Si `@foo/bar` no está definido como un alias de raíz, la última declaración mostraría `/path/to/foo/bar/file.php`.
93+
94+
95+
## Alias Predefinidos <span id="predefined-aliases"></span>
96+
97+
Yii predefine un conjunto de alias para aliviar la necesidad de hacer referencia a rutas de archivo o URLs que son utilizadas regularmente:
98+
99+
- `@root`, la ruta base de la aplicación que se está ejecutando actualmente.
100+
- `@vendor`, la carpeta `vendor` de Composer.
101+
- `@public`, el directorio raíz Web de la aplicación Web se está ejecutando actualmente.
102+
- `@runtime`, la ruta de ejecución de la aplicación en ejecución. Por defecto`@root/runtime`.
103+
- `@web`, la URL base de la aplicación web se ejecuta actualmente.
104+
105+
## Alias en extensiones <span id="package-aliases"></span>
106+
107+
Un alias se define automáticamente por cada [extensión](structure-extensions.md) que ha sido instalada a través de Composer.
108+
El alias es nombrado tras el `namespace` de raíz de la extensión instalada tal y como está declarada en su archivo `composer.json`,
109+
y representa el directorio raíz de la extensión. Por ejemplo, si instalas la extensión `yiisoft/yii2-jui`, tendrás
110+
automáticamente definido el alias `@yii/jui` durante la etapa [bootstrapping](runtime-bootstrapping.md) de la aplicación:
111+
112+
```php
113+
Yii::setAlias('@yii/jui', 'VendorPath/yiisoft/yii2-jui');
114+
```

guide/es/concept/autoloading.md

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Autocarga de Clases (Autoloading)
2+
3+
Dado que Yii utiliza [Composer](https://getcomposer.org/) para administar paquetes, las clases de esos paquetes son automaticamente
4+
cargados sin la necesidad de ser incluidos utilizando `require` para cada uno de ellos. Cuando los paquetes son instalados,
5+
un [autocargador compatible con PSR-0](https://www.php-fig.org/psr/psr-4/) es generado. Para usarlo,
6+
se debe invocar el autocargador `/vendor/autoload.php` con `require_once` en el script de entrada `index.php`.
7+
8+
El autocargador no se utiliza solamente para los paquetes que se instalan, tambien se utiliza para su aplicación que también es un paquete.
9+
Para cargar clases desde cierto espacio de nombres (namespaces), lo siguiente debe ser añadido a `composer.json`:
10+
11+
```json
12+
{
13+
"autoload": {
14+
"psr-4": {
15+
"App\\": "src/"
16+
}
17+
}
18+
}
19+
```
20+
21+
Donde `App\\` es el espacio de nombre raiz (namespace), y `src/` es la carpeta donde se ubican las clases. Se pueden añadir distintos namespaces y carpetas si es necesario.
22+
Una vez listo, ejecuta `composer dump-autoload` y las clases de los espacios de nombres serán cargados automaticamente.
23+
24+
25+
## Referencias
26+
27+
- [PSR-4: Autoloader](https://www.php-fig.org/psr/psr-4/).
28+
- [Guía de Composer sobre autocarga](https://getcomposer.org/doc/01-basic-usage.md#autoloading).

guide/es/concept/configuration.md

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Configuración
2+
3+
Las aplicaciones de Yii 3 son configuradas con un contenedor de Injección de Dependencias (Dependency Injection container). Hay múltiples formas de hacer eso.
4+
Primero nos enfocaremos en los conceptos usados en el proyecto plantilla, y luego daremos formas adicionales para configurar el framework.
5+
6+
## Composer Config Plugin
7+
8+
En el proyecto plantilla se utiliza [hiqdev/composer-config-plugin](https://github.com/hiqdev/composer-config-plugin).
9+
Lo que hace el plugin es recolectar todas las configuraciones definidas en la sección `config-plugin` de todas las dependencias en `composer.json`,
10+
y luego las une en una sola.
11+
12+
## Contenedor de Injección de Dependencias

0 commit comments

Comments
 (0)