저는 symfony를 처음 사용하며 sfDoctrineGuard Plugin을 사용하여 symfony 1.4 버전의 기존 프로젝트에서 작업하고 있습니다. 백엔드에서 사용자 계정을 업데이트하려고하는데 동시에 새 비밀번호를 설정해야합니다. 비밀번호 필드는 사용자를 업데이트 할 때 필수 필드가 아니어야합니다. 이것은 내가 수행하는 단계입니다사용자 계정을 업데이트하려면 새로운 비밀번호가 필요합니다.
1) "사용자 계정"을 통해 사용자를 편집하십시오 2) 암호 필드가 모두 비어 있는지 확인하여 변경하지 않고 사용자를 저장하십시오. 3) 양식은 다음과 같은 오류가 발생합니다 : "필요한 암호를"여기
는이 문제를 해결할 수있는 방법 편집 양식
class sfGuardUserEditForm extends BasesfGuardUserForm
{
$this->widgetSchema['password'] = new sfWidgetFormInputPassword();
$this->validatorSchema['password'] = new sfValidatorPassword();
$this->widgetSchema['password_again'] = new sfWidgetFormInputPassword();
$this->validatorSchema['password_again'] = new sfValidatorString(array('max_length' => 128, 'required' => true, 'empty_value' => null), array('required' =>'Please provide password again'));
$this->widgetSchema->moveField('password_again', 'after', 'password');
$this->mergePostValidator(new sfValidatorSchemaCompare('password', sfValidatorSchemaCompare::EQUAL, 'password_again', array(), array('invalid' => 'The two passwords must be the same.')));
}
public function save($conn = null)
{
$this->object->setPassword($this->getValue('password'));
$this->object->save();
}
}
내 코드는?
주제 : 당신이 새로운 사람이라면 왜 1.x로 작업하고 있습니까? 1.4는 정말로 오래되었습니다. – Samuel
@Samuel 저는 기존 프로젝트에서 일하고 있습니다. – jaahvicky