Cita:
Iniciado por masterpuppet Deberias leer primero un poco de teoria sobre los decorators, te dejo un
link, ahora en la practica deberia ser algo asi:
Código PHP:
Ver original...
->setElementDecorators(array( array('HtmlTag', array('tag' => 'div', 'class' => 'error-wrapper')), array('ViewHelper', array('placement' => 'prepend')), array('Description', array('tag' => 'span', 'class' => 'qtip')), 'placement' => 'append',
'separator' => '<br />'
)),
...
Saludos.
Hola, te voy a hacer una corrección porque no me andaba y bueno leyendo un poco encontré que hay que asignarle un alias al "HtmlTag", porque sino se pisan y queda uno solo.
Osea resultado final:
Código PHP:
->setElementDecorators(array(
array('Errors', array('class' => 'qtip')),
array(array('HtmlTag_2' => 'HtmlTag'), array('tag' => 'div', 'class' => 'error-wrapper')),
array('ViewHelper', array('placement' => 'prepend')),
array('Description', array('tag' => 'span', 'class' => 'qtip')),
array('Label', array(
'placement' => 'append',
'separator' => '<br />'
)),
array('HtmlTag', array('tag' => 'td'))
Bueno de esta manera funciona perfecto, pero para mi diseño sigue habiendo un problema, vos me cambiaste el orden del ViewHelper y a mi no me sirve. Entonces lo que hice es ponerlo en el orden que tenía y lo que pasó es que no sólo me envolvía 'Errors' sino que también el 'ViewHelper'.
Luego encontre una solución a este problema, y es que se puede decidir cuando abrir y cuando cerrar los tags, en teoría todo bárbaro pero cuando lo llevé a la practica no me funcionó.
El código me quedó así pero no puedo lograr que se cierre el tag antes del 'ViewHelper':
Código PHP:
->setElementDecorators(array(
array('ViewHelper', array('tag' => 'span', 'class' => 'qtip')),
array(array('HtmlTag_2' => 'HtmlTag'), array('tag' => 'div', 'closeOnly' => true)),
array('Errors'),
array(array('HtmlTag_2' => 'HtmlTag'), array('tag' => 'div', 'openOnly' => true)),
array('Description', array('tag' => 'span', 'class' => 'qtip')),
array('Label', array(
'placement' => 'append',
'separator' => '<br />'
)),
array('HtmlTag', array('tag' => 'td'))