Olá a todos, resolvi depois de algum tempo usar esse fantástico Framework mas como todo principiante estou apanhando pra entender, pra exclarecer sou da velha guarda (php procedural na veia!) e estou aprendendo agora a usar PHP Orientado a Objeto, e vou dizer é dificil pra ca… mas é isso mesmo, temos que evoluir.
Então sem mais delongas, terminei de fazer o crud do exemplo e criei minhas classes na pasta model: user.php, comment.php… e todas as outras do exemplo do blog, daí veio a parte de cria a autenticação, seguir direitinho o exemplo até que ele me vem com essa:
The UserIdentity class is mainly used by the LoginForm class to authenticate a user based on the username and password input collected from the login page. The following code fragment shows how UserIdentity is used:
$identity=new UserIdentity($username,$password);
$identity->authenticate();
switch($identity->errorCode)
{
case UserIdentity::ERROR_NONE:
Yii::app()->user->login($identity);
break;
......
Bem supus que essa chamada tem que ser colocada na classe logimForm que está na pasta model, daí substitui a function:
public function login()
{
if($this->_identity===null)
{
$this->_identity=new UserIdentity($this->username,$this->password);
$this->_identity->authenticate();
}
if($this->_identity->errorCode===UserIdentity::ERROR_NONE)
{
$duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days
Yii::app()->user->login($this->_identity,$duration);
return true;
}
else
return false;
}
}
Por isso:
public function login()
{
$_identity=new UserIdentity($username,$password);
$_identity->authenticate();
switch($_identity->errorCode)
{
case UserIdentity::ERROR_NONE:
Yii::app()->user->login($_identity);
break;
}
}
}
Só que daí me retorna um Exceptiom : User and its behaviors do not have a method or closure named "validatePassword".
será que os nobres colegas podem me ajudar? agradeço desde já!