Foros del Web » Programando para Internet » PHP » Symfony »

Entidades multiidioma y base de datos

Estas en el tema de Entidades multiidioma y base de datos en el foro de Symfony en Foros del Web. Buenas! Quisiera saber como puedo tener entidades con ciertos campos en diferentes idiomas. En mi base de datos tendré una tabla "idiomas", y un tabla ...
  #1 (permalink)  
Antiguo 19/02/2014, 13:09
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Entidades multiidioma y base de datos

Buenas!

Quisiera saber como puedo tener entidades con ciertos campos en diferentes idiomas.

En mi base de datos tendré una tabla "idiomas", y un tabla / entidad producto. La idea es poder obtener la descripción y otros campos / propiedades en varios idiomas.

Un saludo!
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #2 (permalink)  
Antiguo 19/02/2014, 14:34
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Entidades multiidioma y base de datos

Utiliza la extensión de doctrine Translatable

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 20/02/2014, 03:08
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Entidades multiidioma y base de datos

Buenas,

Gracias por la respuesta. Muy buen componente. Cómo funciona internamente? crea una tabla intermedia?

Me gustaría conocer un poco mejor la estructura de la base de datos,

saludos
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #4 (permalink)  
Antiguo 20/02/2014, 06:40
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Entidades multiidioma y base de datos

Depende de como lo utilices, por defecto crea una sola tabla donde guarda todas las traducciones, pero puedes utilizar una entidad para las traducciones como te sugiere la doc https://github.com/l3pp4rd/DoctrineE...slation-entity, te sugiero que para conocer a fondo como funciona vayas directamente al fuente.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 20/02/2014, 09:11
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Entidades multiidioma y base de datos

Buenas,

Gracias por la respuesta.

Una entidad para todas las traducciones de todas las entidades?

Otra opción es crear una propiedad por idioma.. pero no me parece muy elegante.

Por ejemplo, description_es, description_en... etc

saludos
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #6 (permalink)  
Antiguo 20/02/2014, 10:18
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Entidades multiidioma y base de datos

Por defecto guarda en una única tabla, para escenarios simples(muy simples) puede servir, por lo general se utiliza la otra opción, por cada entidad una entidad para traducciones, a nivel de bbdd crea una tabla mas para las traducciones por cada entidad, e.g

posts
posts_translations
news
news_translations

este es el approach que se suele utilizar

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #7 (permalink)  
Antiguo 21/02/2014, 03:09
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Entidades multiidioma y base de datos

Buenas!

Gracias por la respuesta. Ahora me queda más clara la implementación. Entiendo que no s e crea una tercera tabla llamada "languages".

Para usar este "approach", es necesario indicarlo de alguna forma en concreto? lo comento porque no se cómo se implementan cada una de ellas.

saludos
__________________
Gracias por el Karma :D

empleo ofertas de trabajo
  #8 (permalink)  
Antiguo 21/02/2014, 09:21
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Entidades multiidioma y base de datos

Por otra parte veo que la tabla para todas las traducciones tiene un campo que guarda el nombre de la clase asociada a la entidad de la traducción, sin embargo.. cuando crear un repositorio propio para una traducción de entidad... ¿También guarda ese nombre de clase? es información ultra redundante...
__________________
Gracias por el Karma :D

empleo ofertas de trabajo

Etiquetas: entidades, multiidioma
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:19.