Buenos tardes.
Continuo con mi serie de preguntas sobre "buenas prácticas", ya que me gusta saber como los demás programadores harían lo que yo estoy haciendo para así valorar y seguir aprendiendo.
En este caso tengo el siguiente problema. Estoy realizando una aplicación donde tengo una serie de actividades. Cada actividad puede ser de un tipo. Para ello tengo una propiedad en la clase activity.php
que me indica que tipo de actividad es. (Un string).
Pues bien,en el Frontend de la aplicación voy a tener que realizar distintas traducciones en función de esta propiedad.
Por ejemplo, si la actividad es "viaje en barco", El punto de partida será traducido como "puerto", si es "Viaje en avión", será aeropuerto, si fuera "monólogo" sería teatro, etc...
Para esto se me habían ocurrido 3 opciones.
- Utilizar el dominio de la traducción
{{ 'activity.starting_poing'|trans({}, activity.type) }}
- En cada traducción utilizar algo como
{{ (activity.type ~ '.activity.starting_point')|trans }}
- Crear una extensión de twig y implementar una o varias funciones que me ayuden en esta tarea. Por ejemplo un filtro activity_trans que lo que realice por detrás sea la concatenación correcta de la cadena a traducir.
{{ 'activity.starting_poing'|activity_trans(activity) }}
Qee opinais vosotros?
Muchas gracias