Skip to content

Commit fe2ba1d

Browse files
authored
NEW: fluent > schema.es.md translation (#1071)
[#1070](#1070)
1 parent 2b0abd6 commit fe2ba1d

File tree

1 file changed

+23
-22
lines changed

1 file changed

+23
-22
lines changed

docs/fluent/schema.es.md

Lines changed: 23 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,15 @@ try await database.schema("planets")
1111
.create()
1212
```
1313

14-
Para crear un `SchemaBuilder`, usa el método `schema` en "database". Pásale el nombre de la tabla o colección que quieras afectar. Si estás editando el esquema para un modelo, asegúrate de que este nombre coincida con el [`schema`](model.md#schema) del modelo.
14+
Para crear un `SchemaBuilder`, usa el método `schema` en "database". Pásale el nombre de la tabla o colección que quieras afectar. Si estás editando el esquema para un modelo, asegúrate de que este nombre coincida con el [`schema`](model.md#schema) del modelo.
1515

1616
## Acciones
1717

18-
La API de schema soporta crear, actualizar y borrar esquemas. Cada acción soporta un subconjunto de los métodos de la API disponibles.
18+
La API de schema soporta crear, actualizar y borrar esquemas. Cada acción soporta un subconjunto de los métodos de la API disponibles.
1919

2020
### Crear
2121

22-
Llamar a `create()` crea una nueva tabla o colección en la base de datos. Todos los métodos para definir nuevos campos y restricciones (constraints) están soportados. Los métodos para actualizaciones y borrados se ignoran.
22+
Llamar a `create()` crea una nueva tabla o colección en la base de datos. Todos los métodos para definir nuevos campos y restricciones (constraints) están soportados. Los métodos para actualizaciones y borrados se ignoran.
2323

2424
```swift
2525
// Un ejemplo de creación de esquema.
@@ -29,7 +29,7 @@ try await database.schema("planets")
2929
.create()
3030
```
3131

32-
Si ya existe una tabla o colección con el nombre elegido, se lanzará un error. Para ignorarlo, usa `.ignoreExisting()`.
32+
Si ya existe una tabla o colección con el nombre elegido, se lanzará un error. Para ignorarlo, usa `.ignoreExisting()`.
3333

3434
### Actualizar
3535

@@ -54,14 +54,14 @@ database.schema("planets").delete()
5454

5555
## Campo
5656

57-
Pueden añadirse campos cuando se crea o actualiza un esquema.
57+
Pueden añadirse campos cuando se crea o actualiza un esquema.
5858

5959
```swift
6060
// Añade un campo nuevo
6161
.field("name", .string, .required)
6262
```
6363

64-
El primer parámetro es el nombre del campo. Este nombre debería coincidir con la clave usada en la propiedad del modelo. El segundo parámetro es el [tipo de dato](#tipos-de-datos) del campo. Por último, puedes añadir cero o más [restricciones](#restricciones-de-campo).
64+
El primer parámetro es el nombre del campo. Este nombre debería coincidir con la clave usada en la propiedad del modelo. El segundo parámetro es el [tipo de dato](#tipos-de-datos) del campo. Por último, puedes añadir cero o más [restricciones](#restricciones-de-campo).
6565

6666
### Tipos de Datos
6767

@@ -86,13 +86,14 @@ Debajo hay un listado con los tipos de datos soportados.
8686

8787
### Restricciones de Campo
8888

89-
Debajo hay un listado con las restricciones de campo (field constraints) soportadas.
89+
Debajo hay un listado con las restricciones de campo (field constraints) soportadas.
9090

9191
|FieldConstraint|Descripción|
9292
|-|-|
9393
|`.required`|No permite valores `nil`.|
94-
|`.references`|Requiere que el valor del campo coincida con un valor del esquema referenciado. Ver [clave externa](#clave-externa)|
95-
|`.identifier`|Denota la clave primaria. Ver [identificador](#identificador)|
94+
|`.references`|Requiere que el valor del campo coincida con un valor del esquema referenciado. Ver [clave externa](#clave-externa).|
95+
|`.identifier`|Denota la clave primaria. Ver [identificador](#identificador).|
96+
|`.sql(SQLColumnConstraintAlgorithm)`|Define cualquier restricción no compatible (p. ej. `default`). Consulta [SQL](#sql) y [SQLColumnConstraintAlgorithm](https://api.vapor.codes/sqlkit/documentation/sqlkit/sqlcolumnconstraintalgorithm/).|
9697

9798
### Identificador
9899

@@ -103,18 +104,18 @@ Si tu modelo usa una propiedad `@ID` estándar, puedes usar el helper `id()` par
103104
.id()
104105
```
105106

106-
Para tipos de identificador personalizados, necesitarás especificar el campo manualmente.
107+
Para tipos de identificador personalizados, necesitarás especificar el campo manualmente.
107108

108109
```swift
109110
// Añade campo para identificador personalizado.
110111
.field("id", .int, .identifier(auto: true))
111112
```
112113

113-
La restricción `identifier` debe usarse en un único campo, y denote la clave primaria. La marca (flag) `auto` determina si la base de datos deberá generar el valor automáticamente o no.
114+
La restricción `identifier` debe usarse en un único campo, y denote la clave primaria. La marca (flag) `auto` determina si la base de datos deberá generar el valor automáticamente o no.
114115

115116
### Actualizar Campo
116117

117-
Puedes actualizar el tipo de dato de un campo usando `updateField`.
118+
Puedes actualizar el tipo de dato de un campo usando `updateField`.
118119

119120
```swift
120121
// Actualiza el campo al tipo de dato `double`.
@@ -138,7 +139,7 @@ Las restricciones (constraints) pueden añadirse al crear o actualizar un esquem
138139

139140
### Unique
140141

141-
Una restricción "unique" requiere que no existan valores duplicados en uno o más campos.
142+
Una restricción "unique" requiere que no existan valores duplicados en uno o más campos.
142143

143144
```swift
144145
// No permite direcciones de email duplicadas.
@@ -152,7 +153,7 @@ Si varios campos son restringidos, la combinación de los valores de cada campo
152153
.unique(on: "first_name", "last_name")
153154
```
154155

155-
Para borrar una restricción "unique", usa `deleteUnique`.
156+
Para borrar una restricción "unique", usa `deleteUnique`.
156157

157158
```swift
158159
// Elimina la restricción de email duplicado.
@@ -168,7 +169,7 @@ Fluent generará nombres de restricción únicos por defecto. Sin embargo, puede
168169
.unique(on: "email", name: "no_duplicate_emails")
169170
```
170171

171-
Para borrar una restricción con nombre, debes usar `deleteConstraint(name:)`.
172+
Para borrar una restricción con nombre, debes usar `deleteConstraint(name:)`.
172173

173174
```swift
174175
// Elimina la restricción de email duplicado.
@@ -177,7 +178,7 @@ Para borrar una restricción con nombre, debes usar `deleteConstraint(name:)`.
177178

178179
## Clave Externa
179180

180-
Las restricciones de clave externa requieren que el valor de un campo coincida con uno de los valores del campo referenciado. Esto es útil para prevenir el guardado de datos no válidos. Las restricciones de clave externa pueden añadirse como restricciones de campo o de nivel superior.
181+
Las restricciones de clave externa requieren que el valor de un campo coincida con uno de los valores del campo referenciado. Esto es útil para prevenir el guardado de datos no válidos. Las restricciones de clave externa pueden añadirse como restricciones de campo o de nivel superior.
181182

182183
Para añadir una restricción de clave externa a un campo, usa `.references`.
183184

@@ -195,7 +196,7 @@ Esta misma restricción podría añadirse como una de nivel superior usando `for
195196
.foreignKey("star_id", references: "stars", "id")
196197
```
197198

198-
A diferencia de las restricciones de campo, las de nivel superior pueden añadirse en una actualización del esquema. También pueden [nombrarse](#nombre-de-constraint).
199+
A diferencia de las restricciones de campo, las de nivel superior pueden añadirse en una actualización del esquema. También pueden [nombrarse](#nombre-de-constraint).
199200

200201
Las restricciones de clave externa soportan las acciones opcionales `onDelete` y `onUpdate`.
201202

@@ -215,7 +216,7 @@ Debajo hay un ejemplo del uso de acciones de clave externa.
215216
```
216217

217218
!!! warning "Advertencia"
218-
Las acciones de clave externa ocurren únicamente en la base de datos, evitando a Fluent.
219+
Las acciones de clave externa ocurren únicamente en la base de datos, evitando a Fluent.
219220
Esto significa que cosas como el middleware de modelo o el borrado no permanente (soft-delete) pueden no funcionar correctamente.
220221

221222
## SQL
@@ -235,7 +236,7 @@ o inclusive un valor por defecto para una marca de tiempo (timestamp):
235236

236237
## Diccionario
237238

238-
El tipo de dato diccionario es capaz de guardar valores de diccionario anidados. Esto inclute structs conformadas con `Codable` y diccionarios de Swift con un valor `Codable`.
239+
El tipo de dato diccionario es capaz de guardar valores de diccionario anidados. Esto inclute structs conformadas con `Codable` y diccionarios de Swift con un valor `Codable`.
239240

240241
!!! note "Nota"
241242
Los conectores de bases de datos SQL de Fluent guardan diccionarios anidados en columnas JSON.
@@ -262,15 +263,15 @@ Este campo puede guardarse usando el tipo de dato `.dictionary(of:)`.
262263
.field("pet", .dictionary, .required)
263264
```
264265

265-
Como los tipos `Codable` son diccionarios heterogéneos, no especificamos el parámetro `of`.
266+
Como los tipos `Codable` son diccionarios heterogéneos, no especificamos el parámetro `of`.
266267

267268
Si los valores del diccionario fueran homogéneos, por ejemplo `[String: Int]`, el parámetro `of` especificaría el tipo del valor.
268269

269270
```swift
270271
.field("numbers", .dictionary(of: .int), .required)
271272
```
272273

273-
Las claves de los diccionarios deben ser siempre cadenas (strings).
274+
Las claves de los diccionarios deben ser siempre cadenas (strings).
274275

275276
## Array
276277

@@ -289,7 +290,7 @@ Este campo puede guardarse usando el tipo de dato `.array(of:)`.
289290
.field("tags", .array(of: .string), .required)
290291
```
291292

292-
Como el array es homogéneo, especificamos el parámetro `of`.
293+
Como el array es homogéneo, especificamos el parámetro `of`.
293294

294295
Los `Array`s de Swift que puedan codificarse siempre tendrán un tipo de valor homogéneo. Los tipos `Codable` personalizados que serializan valores heterogéneos a contenedores sin clave son una excepción y deberían usar el tipo de dato `.array`.
295296

0 commit comments

Comments
 (0)