양식 저장을 방해하는 알려진 오류의 원인이있는 장고 관리자 양식이 있습니다. 모델의 모든 필드를 검사했고 필요한 모든 필드가 채워졌습니다. 양식의 상단에Django 관리자 양식에 표시되지 않는 필드의 오류
Please correct the error below.
, 아직 필드는 오류 메시지가 강조되지 않은 : 그럼에도 불구하고, 나는 표준 오류 메시지가 계속.
또 다른 원인이 될 수 있으며 어떻게 디버깅합니까?
양식 저장을 방해하는 알려진 오류의 원인이있는 장고 관리자 양식이 있습니다. 모델의 모든 필드를 검사했고 필요한 모든 필드가 채워졌습니다. 양식의 상단에Django 관리자 양식에 표시되지 않는 필드의 오류
Please correct the error below.
, 아직 필드는 오류 메시지가 강조되지 않은 : 그럼에도 불구하고, 나는 표준 오류 메시지가 계속.
또 다른 원인이 될 수 있으며 어떻게 디버깅합니까?
다음은 숨겨진 오류가 무엇인지 확인하는 방법입니다. 폼 클래스보다도 이러한 수입 추가 (이미 존재하지 않는 경우 새로 생성) : 그런 다음 폼 클래스에 추가
# get a way to log the errors:
import logging
log = logging.getLogger(__name__)
# convert the errors to text
from django.utils.encoding import force_text
을이 정의 :
class MyAdminForm(forms.ModelForm):
def is_valid(self):
log.info(force_text(self.errors))
return super(MyAdminForm, self).is_valid()
당신이 제출 한 후 로그를 검토 할 때 다시, 숨겨진 모든 오류를 나열합니다. 이 필드를했기 때문에
get_num_items = forms.IntegerField()
이 검증 실패 :이 문제가 있었을 때
, 나는 오류의 원인은 내가 폼에 추가했던 일부 '계산'읽기 전용 필드, 예를 들면이었다 발견 필요에 따라 값이 없습니다. required = False를 포함하도록 필드 정의를 변경하면 다음과 같이 문제가 해결되었습니다.
get_num_items = forms.IntegerField(required=False)
동일한 문제가있었습니다. 필자가 데이터베이스에서 값을 강제하는 auto_now_add가있는 DateTimeField가되었지만 Django의 형식이 올바르지 않거나 auto_now_add로 표시된 필드가 관리자에게 표시되지 않았기 때문에 오류가 표시되지 않았습니다.
가능한 원인을 추가하려면 - 일부 추가,하지만 읽기 전용 정보를 표시하도록 필드를 덮어 쓴 사용자 지정 서식 파일로 인라인을 포함 할 때이 오류가 발생했습니다. 필자는 필드를 명시 적으로 읽기 전용 필드로 나열하여이를 수정했기 때문에 뷰 로직은이를 예상하지 못했습니다. – nimasmi