2011-10-07 5 views
0

나는 다음과 같은 양식이 있습니다 사용자가 같은 잘못된 날짜를 삽입Django가 잘못된 날짜를 받아들이고 변형시키는 것을 방지하려면 어떻게해야합니까?

class GuaranteesForm(forms.ModelForm): 
    birth_date = forms.DateField(input_formats=['%d/%m/%Y'], required=True) 

그러나 경우 : 대신 예외를 발생의 13/13/1999, 장고 날짜와 달 필드의 계수를 수행하여 날짜 변환을, 월과 년을 덧붙이면됩니다. 이 예에서는 12 월이 넘기 때문에 지속될 날짜는 13/01/2000입니다.

나는 오히려 InvalidFormException을 얻고 싶습니다.이 동작을 막는 방법이 있습니까?

자이 썬 (DOJ)에서 장고를 사용하고 있습니다.

나는 이미 clean_birth_date를 통해 솔루션을 구현했지만 오히려 못 생겼다고 생각합니다. 내가 찾고있는 건 일반적으로 이런 종류의 행동을 막는 방법이다.

+1

당신 만의 깨끗한 방법을 쓸 수 있을까요? def clean_birth_date (self) : do do stuff –

+0

이미 저도 해봤지만 기본 행동이 13 일과 60 일을 받아들이는 것은 어리석은 것처럼 보입니다. – Sirs

답변

1

cleaning a specific form field 일 때 수동으로 예외를 발생시킬 수 있습니다.

+0

나는 이미 그랬지만 정말 좋아하지는 않습니다. 나는 좀 더 일반적인 것을 찾고있다. – Sirs

+0

음 청결한 해결책이 없기 때문에 나는 당신의 대답을 좋은 것으로 받아 들일 것입니다. – Sirs

관련 문제