当使用\ Phalcon \ Mvc \ Model \ Validator \ Uniqueness验证程序以及作为命名空间的模型时,我得到以下Phalcon \ Db \ Exception。看起来验证器类在构建支持查询时没有使用模型中的getSource方法。
您的SQL语法有错误;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 在app \ dao \ users附近WHERE username ='nhidalgo'AND id<> '''在线 1执行SELECT COUNT(*)AS rowcount FROM app \ dao \ users WHERE时 username ='nhidalgo'和id<> ''
我的代码如下:
<?php
namespace App\Dao;
use Phalcon\Mvc\Model\Validator\Inclusionin;
use Phalcon\Mvc\Model\Validator\Uniqueness;
class Users extends \Phalcon\Mvc\Model
{
public function initialize()
{
$this->setSource('users');
}
public function validation()
{
$this->validate(new Uniqueness(
array(
"field" => "username",
"message" => "Username must be unique"
)
));
$this->validate(new Uniqueness(
array(
"field" => "email",
"message" => "Email must be unique"
)
));
return !$this->validationHasFailed();
}
}