Fala galera,
Estou fazendo um form que precisa ter uns campos que não estão no model e gostaria de valida-los usando o mesmo padrão do Yii, como posso fazer isso?
Fala galera,
Estou fazendo um form que precisa ter uns campos que não estão no model e gostaria de valida-los usando o mesmo padrão do Yii, como posso fazer isso?
da uma olhada no model LoginForm que é gerado para o formulário de login e cria outro baseado nele…
geralmente fica em models/LoginForm
basicamente é só vc criar um model extendendo a classe CFormModel, criar os atributos, as rules() e os attributesLabel() … dai é só seguir a mesma lógica usada pelo gii quando ele gera o crud para os models da base de dados.
Intendi, mas na verdade o que eu precisava mesmo era embutir os campos a mais na validação mesmo, mas acho que vou ter que estender o model gerado e aplicar as mudanças nele.
Amigo não sei se é tarde demais, mais explica um pouco mais o que você deseja.
Sds
Na verdade já implementei e esta funcionando,
mas o que eu queria era validar campos que estavam no meu formulário, mas não no modelo, criando um modelo customizado consegui "juntar" vários relacionamentos em uma tela só e validá-los todos juntos.
… e como fez?
acho que não é mais relevante, mas eu acabei de resolver assim:
<?php
class PessoaFisicaController extends Controller {
...
public function actionCreate() {
...
$this->performAjaxValidation(array($modelPessoa, $modelPessoaFisica));
...
}
protected function performAjaxValidation($model) {
if (isset($_POST['ajax']) && $_POST['ajax'] === 'pessoa-fisica-form') {
echo CActiveForm::validate($model);
Yii::app()->end();
}
}
?>