它总是说'这个价值已经在使用'虽然还没有出现在数据库中。
有时它会说"这个字段不能留空"
public function validationDefault(Validator $validator)
{
$validator
->integer('id')
->allowEmpty('id', 'create');
$validator->requirePresence('username', 'Please enter username.');
$validator
->requirePresence('password', 'create')
->notEmpty('password', 'You must enter a password', 'create')
->add('password', [
'length' => [
'rule' => ['minLength', 8],
'message' => 'Passwords must be at least 8 characters long.',
]
]);
$validator
->requirePresence('age', 'create')
->notEmpty('age');
$validator
->requirePresence('address', 'create')
->notEmpty('address');
$validator
->email('email')
->requirePresence('email', 'create')
->notEmpty('email');
$validator
->requirePresence('gender', 'create')
->notEmpty('gender');
return $validator;
}
public function buildRules(RulesChecker $rules)
{
$rules->add($rules->isUnique(['username']));
$rules->add($rules->isUnique(['email']));
return $rules;
}
<?php
namespace App\Model\Entity;
use Cake\Auth\DefaultPasswordHasher;
use Cake\ORM\Entity;
/**
* User Entity.
*/
class User extends Entity
{
protected $_accessible = [
'*' => true,
'id' => false
];
protected function _setPassword($password)
{
return (new DefaultPasswordHasher)->hash($password);
}
}
?>
我现在无法注册或添加更多数据,不像我可以添加或注册之前,我最近更新了我的cakephp版本,我还在数据库中添加了性别,地址和年龄字段
我是新手,
答案 0 :(得分:0)
我自己遇到了这个问题,对我来说,罪魁祸首是'isUnique&#39;打电话给球场。我的问题是电子邮件领域,它并不是唯一的。
此外,在生产环境中更改模型后,必须清除新提交字段的缓存以进入数据库。 &#39; cake cache clear_all&#39;。
我无法发表评论。