2012-10-09 46 views
5

Estoy usando CakePHP 2.2.3. Tengo un formulario de contacto con un modelo sin una tabla pero con reglas de validación.Cakephp textarea

Mi problema es, ¿cómo decirle a CakePHP que el tipo de entrada es textarea? Podría usar $this->Form->textarea(), pero me di cuenta de que cuando lo uso, no crea el HTML adecuado para informar los errores de validación. Si uso $this->Form->input(), simplemente crea un texto de tipo de entrada normal.

Debe crear algo como:

<div class="input email required"><input name="data[Quote][email]" required="1" type="email" id="QuoteEmail"/></div> 

sino que crea algo como:

<textarea name="data[Quote][company_description]" id="QuoteCompanyDescription"></textarea> 

aviso de la ausencia de <div class="input email required"></div>, que supongo es el DOM elemento de CakePHP utiliza para inyectar la validación error.

Me gustaría saber cuál es la mejor manera de lograrlo.

Respuesta

25

que tienden a utilizar de entrada() para todos los tipos y especifique en la matriz de opciones ..

$this->Form->input('company_description', array('type' => 'textarea')); 

http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html

+0

Compruebe que el nombre del campo coincida con el de la validación de modelos. – 472084

+0

Sí, pero ¿cómo debería decir en el Modelo que es un área de texto? Actualmente solo tengo la regla no Vacío y un mensaje para esa regla. –

+0

Usted dice que el campo es '