2009-10-23 8 views
7

Estoy usando Zend Framework y Doctrine en un proyecto y me preguntaba si alguien puede sugerir una buena manera de integrar la validación de Doctrine con Zend_Form. Estoy tratando de evitar la duplicación de código.Validación Doctrine y Zend_Form

Respuesta

1

Si no está satisfecho con la agregación de los errores de su forma puede hacerlo de la siguiente manera: - hacer una Zend_Form sin validadores - en enviar, hacer un objeto Doctrina y llama isValid() - Si no es válida , no almacene, pero muestre la forma nuevamente con un error

Lo que le recomendaría, sin embargo, es - Escriba los validadores para su Zend_Form y su modelo. - Escribe Validadores para tu Zend_Form que toma un Doctrine Model y campo como entrada y luego valida las cosas en tu modelo

Supongo que la última opción podría ser una biblioteca muy genérica, útil incluso para la inclusión en Zend Framework. Sin embargo, es tedioso escribirlo de la manera correcta.

+0

He estado intentando algo similar a su sugerencia de isValid(), solo lo hago en una clase Zend_Form personalizada que almacena una instancia del modelo de Doctrine que se valida contra: función pública isValid ($ data) { $ this-> getModel() -> fromArray ($ this-> getValues ​​()); if (! $ Modelo-> isValid()) {} ... yo no había pensado en crear validadores personalizados, Voy a mirar en hacerlo de esa manera, así, gracias por la sugerencia. –