Итак, я хочу иметь возможность отслеживать любые ошибки ValidationErrors, вызываемые методом def clean в определенной форме. У меня есть форма с именем AdForm, проверка в форме работает, я вижу ошибки в выводе html.
Регистрация также работает, так как я получаю информацию регистратора в текстовом файле. Странно то, что я получаю уведомление;
2020-02-11 18: 17: 43,099 [INFO] .forms: AdForm называется
Но я не В моих файлах журналов не отображается ошибка проверки?
Что-то не так с моими настройками? Для некоторых из вас это может быть просто, но я изо всех сил пытаюсь найти свои собственные ошибки, любая помощь будет оценена по достоинству!
forms.py
from .models import Ad
import logging
logger = logging.getLogger(__name__)
class AdForm(forms.ModelForm)
logger.info("AdForm is called")
class Meta:
model = Ad
fields = [
'title',
'description'
]
def clean(self):
cleaned_date = super(AdForm, self).clean()
title = cleaned_data.get('title')
if len(title) < 4:
logger.info("Title is shorter then 4 characters")
raise forms.ValidationError("Title is too short")
if len(title) > 24:
logger.info("Title is shorter then 4 characters")
raise forms.ValidationError("Title is too long")
settings.py
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'standard': {
'format': '%(asctime)s [%(levelname)s] %(name)s: %(message)s'
},
},
'handlers': {
'default': {
'level': 'DEBUG',
'class': 'logging.handlers.RotatingFileHandler',
'filename': 'C:/Python/logs/mylog.log',
'maxBytes': 1024*1024*5, #5mb
'backupCount': 5,
'formatter': 'standard',
},
'request_handler': {
'level': 'DEBUG',
'class': 'logging.handlers.RotatingFileHandler',
'filename': 'C:/Python/logs/django_request.log',
'maxBytes': 1024*1024*5, #5mb
'backupCount': 5,
'formatter': 'standard',
},
},
'loggers': {
'': {
'handlers': ['default'],
'level': 'DEBUG',
'propagate': True
},
'django.request': {
'handlers': ['request_handler'],
'level': 'DEBUG',
'propagate': False
},
}
}