2009-08-27 8 views
5

¿Quién es responsable de codificar una cadena, el modelo o la vista?¿Quién es responsable de codificar una cadena?

Tengo una cadena de una base de datos, viene del usuario. Quiero mantener la mayor cantidad de información posible en la base de datos, así que estoy guardando la entrada textualmente.

Cuando llego a mostrar la cadena, ¿debería estar codificándola cuando llene el modelo de vista, o la vista debería decidir si desea mostrarla codificada o no?

Gracias,
K

Respuesta

13
La

Ver

La diferencia entre los dos es que sostiene el modelo que los datos y la vista es responsable de mostrar los datos en función del medio de salida. Porque si quisiera transmitir estos datos a través de algún medio HTML, probablemente no lo quiera codificado en HTML.

+4

Además, los datos codificados en la base de datos son basura. – peacedog

2

Creo que esto se refiere principalmente a la limpieza que le gustaría tener su Vista. Si codifica en el extremo de la vista, mantiene el controlador libre de operaciones de manipulación de datos al tiempo que confunde la vista con etiquetas de script feas, sin embargo, si lo hace en el controlador, tendrá una vista más limpia (más amigable con el diseñador) y posiblemente código confuso en el controlador.

La verdadera pregunta es ¿preferirías complicar el código de tu back-end o el markup de vista?

En términos generales, creo que la mejor práctica sería en su vista para que su controlador tenga la capacidad de transformarse a diferentes flujos de salida sin cambiar la forma en que opera.

Cuestiones relacionadas