私のフロント エンドは Php Yii です。ユーザー名がデータベースに既に存在するかどうかを確認するカスタム検証ルールを作成しようとしています。
データベースに直接アクセスできません。データベースと通信するには、RestClient を使用する必要があります。私の問題は、カスタム検証ルールが CFormModel で機能しないことです。
これが私のコードです:
public function rules()
{
return array(
array('name', 'length', 'max' => 255),
array('nickname','match','pattern'=> '/^([a-zA-Z0-9_-])+$/' )
array('nickname','alreadyexists'),
);
}
public function alreadyexists($attribute, $params)
{
$result = ProviderUtil::CheckProviderByNickName($this->nickname);
if($result==-1)
{
$this->addError($attribute,
'This Provider handler already exists. Please try with a different one.');
}
これはまったく機能していないようです。これも試しました:
public function alreadyexists($attribute, $params)
{
$this->addError($attribute,
'This Provider handler already exists. Please try with a different one.');
}
それでも、うまくいかないようです。ここで何が間違っていますか?