2010-12-15 3 views
1

HINWEIS: Diese Frage bezieht sich auf Kohana 3.0 nur. Kohana 3.1 und neuer behandeln Validierungsrückrufe auf eine völlig andere Art und Weise.Kohana 3: Rückruf Validierung

Ich mache eine Validierung mit einem Rückruf (ORM). Das sind meine Code:

class Model_Loja extends ORM { 
    // more code goes here! 
    protected $_callbacks = array(
     'endereco' => array('endereco_unico') 
    ); 

    public function endereco_unico(Validate $validate, $campo) { 
     $resultado = $this->where('endereco', '=', $this->endereco)->find_all(); 
     if(count($resultado)) { 
      return false; 
     } 
     else { 
      return true; 
     } 
    } 
    // more code goes here! 

Es Rückkehr wahr oder falsch (wenn es einen Wert, gibt false), aber wie könnte ich eine Bestätigungsnachricht zu senden, wenn es false zurückgibt?

Antwort

0

Die folgende Validierungsfunktion setzt einen Fehler für das Feld, wenn die Validierung fehlschlägt:

public function endereco_unico(Validate $validate, $campo) { 
    if(count($this->where('endereco', '=', $this->endereco)->find_all())) { 
     $validate->error($campo, 'endereco_unico'); 
    } 
} 

(von Frage verschoben)