2010-12-15 4 views
0

Ich versuche, Bestätigungsnachrichten in Kohana 3 (Orm-Modell) hinzuzufügen.Kohana 3: ORM-Validierungsnachrichten

Klassen/Modell/cliente.php

<?php defined('SYSPATH') or die('No direct script access.'); 

class Model_Cliente extends ORM { 
protected $_table_name = 'clientes'; 
protected $_primary_key = 'id'; 
protected $_has_one = array('loja' => array()); 
protected $_rules = array(
    'responsavel' => array('not_empty' => array(), 'min_length' => array(3)), 
    'email' => array('not_empty' => array(), 'email' => array()), 
    'telefone' => array('regex' => array('/^(\(\d{2}\)|\d{2})[ -]?\d{4}[ -]?\d{4}$/')) 
); 
} 
?> 

Nachrichten/cliente.php

<?php defined('SYSPATH') or die('No direct script access.'); 

return array(
    'responsavel' => array(
     'not_empty' => 'O nome do responsável não pode ficar em branco.', 
     'min_length' => 'O nome do responsável deve conter 3 caracteres ou mais.' 
    ) 
); 

?> 

Ausgang:

Array ([responsavel] => Array ([0] => not_empty [1] => Array ()) [email] => Array ([0] => not_empty [1] => Array ())) 

ich keine Bestätigungsnachricht bekommt, gerade diese Ausgabe über ... Irgendwelche Idea? Vielen Dank.

Antwort

2

Wenn Sie ->errors() ohne Parameter aufrufen, benötigen Sie Fehleroriginale anstelle von Fehlerübersetzungen. Das Ergebnis enthält Feldnamen und ihre Fehlerbeschreibung (Regel/Rückrufname + Parameter angewendet). In Ihrem Beispiel haben Sie not_empty Regeln (ohne Argumente) auf den Feldern responsavel und email.

Btw, ->errors('') und ->errors('validate') sind Synonyme.