2013-07-23 4 views
0

내 문제는 제목에서 분명히 알 수 있습니다.Django Choicefield = 필수 항목이며 빈칸 선택에 대한 예외는 없습니다.

기본적으로 동적 선택 필드가있는 양식이 있습니다. 그리고 난 선택 필드에 빈 옵션을 만듭니다.

choices = [('', '----------')] 

문제는 내가 공백 옵션을 제출하면 양식이 유효성을 검사합니다. 나는 django 1.5를 설치했기 때문에 이전 버전에서 이와 같이 작동하고 유효성 검사 예외가 발생 했더라도 지금은 그렇지 않다.

그래서 큰 질문은 어디에서 어떻게 유효합니까?

나는 Choicefield을 ovveride을 시도하고, 검증 방법,하지만 난 여전히 같은 결과를 얻을 :

class DynamicChoiceField(forms.ChoiceField): 
    # The only thing we need to override here is the validate function. 
    def validate(self, value): 
     if self.required and not value: 
      raise ValidationError(self.error_messages['required']) 

앤디 아이디어들?

답변

0

예, 이것은 매우 분명합니다. 그러나 필수 = False를 변경할 때 얻는 것. 또는 장고를 사용하려고 시도합니다 force_insert = 모델에서 참, 나는 그것을 사용하지 않았지만 그것을 시도하십시오.

+0

저는 일종의 손실입니다. 그래서 내가 한보기에서 양식을 초기화 한 일이 있었지만 양식을 제출할 때 그것을 다른보기로 리디렉션했습니다. 여기서 request.POST가 채워집니다. 어떻게 든 하나의 관점에서 모든 것을 움직이면 유효성 검사가 예상대로 작동하기 때문에 그 역할이 중요합니다. – Viktor