<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog cakephp en español por Hospedaxes &#187; Validación 1.2</title>
	<atom:link href="http://cakephp.hospedaxes.com/tag/validacion-12/feed" rel="self" type="application/rss+xml" />
	<link>http://cakephp.hospedaxes.com</link>
	<description>Blog sobre desarrollo web con cakephp en español por Hospedaxes</description>
	<lastBuildDate>Mon, 26 Apr 2010 07:11:23 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Validación en CakePHP 1.2 (II)</title>
		<link>http://cakephp.hospedaxes.com/validacion-en-cakephp-12-ii</link>
		<comments>http://cakephp.hospedaxes.com/validacion-en-cakephp-12-ii#comments</comments>
		<pubDate>Wed, 12 Nov 2008 14:22:20 +0000</pubDate>
		<dc:creator>nuria</dc:creator>
				<category><![CDATA[Noticias]]></category>
		<category><![CDATA[Validación 1.2]]></category>
		<category><![CDATA[cakephp-1.2]]></category>
		<category><![CDATA[cakephp]]></category>
		<category><![CDATA[personalizada]]></category>
		<category><![CDATA[validacion]]></category>

		<guid isPermaLink="false">http://cakephp.hospedaxes.com/?p=136</guid>
		<description><![CDATA[Continuando con el post Validación en CakePHP 1.2, explicaremos en esta ocasión cómo validar formatos de campos permitiendo que estén vacíos y cómo realizar una validación personalizada, introduciendo manualmente el código de validación.
Validaciones con campos vacíos
Hasta hoy, no habíamos encontrado la forma de validar formatos de campos, permitiendo que se encuentren vacíos, directamente en el [...]]]></description>
			<content:encoded><![CDATA[<p>Continuando con el post <a title="Validación en CakePHP 1.2" href="http://cakephp.hospedaxes.com/validacion-en-cakephp-12">Validación en CakePHP 1.2</a>, explicaremos en esta ocasión cómo validar formatos de campos permitiendo que estén vacíos y cómo realizar una validación personalizada, introduciendo manualmente el código de validación.</p>
<p><strong>Validaciones con campos vacíos</strong></p>
<p>Hasta hoy, no habíamos encontrado la forma de validar formatos de campos, permitiendo que se encuentren vacíos, directamente en el modelo. Lo que hacíamos era hacer este tipo de comprobaciones manualmente, rompiendo un poco la flexibilidad que nos ofrece CakePHP para hacer las validaciones directamente en el modelo y sin volver a preocuparnos de ellas.</p>
<p>Ahora ya descubrimos la manera de hacerlo. Es una cosa muy simple que habíamos pasado por alto. Simplemente tenemos que pasar un parámetro a la función de validación, de la manera siguiente:</p>
<pre class="prettyprint"><code>var $validate = array(
   'email' =&gt; array(
   'valid' =&gt; array( 'rule' =&gt; array('email'),
                             <strong>'allowEmpty' =&gt; true</strong>,
                             'message' =&gt; 'Formato email inválido')
                             )
              );</code></pre>
<p><strong>Validación a medida</strong></p>
<p>En el modelo introduciremos el siguiente código:</p>
<pre class="prettyprint"><code>var $validate = array(
    'campo' =&gt; array(
                  'valid' =&gt; array( 'rule' =&gt; 'reglaPropia',
                              'param1'=&gt;'valor',
                              'message' =&gt; 'Mensaje de salida')
                              )
                    );

function reglaPropia($value, $params)
{
   $valid = false;
   if (!condicion){
      // Asignamos el valor a $valid en función de la condición que queramos establecer
   }
   return $valid;
}</code></pre>
<p>A la función creada le hemos pasado dos argumentos, aunque el segundo podríamos no ponerlo si no es necesario. Ambos serán arrays, de manera que si queremos acceder al valor del campo a validar tendremos que leer <em>$value['campo']</em> y para acceder a los parámetros <em>$params['param1']</em> , pudiendo introducir tantos parámetros como sea necesario.</p>
<p>En esta función podemos utilizar también las funciones de validación de CakePHP. Por ejemplo:</p>
<pre class="prettyprint">$valid = Validation::custom($value['campo'], $params['param1']);</pre>
]]></content:encoded>
			<wfw:commentRss>http://cakephp.hospedaxes.com/validacion-en-cakephp-12-ii/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

