Исходный код django.core.exceptions

"" " 
Глобальные классы исключений и предупреждений Django. 
" ""


[docs] class FieldDoesNotExist ( Exception ): "" "Запрошенное поле модели не существует" "" пройти
[docs] class AppRegistryNotReady ( Exception ): "" "Реестр django.apps еще не заполнен" "" передать
[docs] class ObjectDoesNotExist ( Exception ): "" "Запрошенный объект не существует" "" silent_variable_failure = True
[docs] class MultipleObjectsReturned ( Exception ): "" "Запрос вернул несколько объектов, хотя ожидался только один." "" pass
[docs] class SuspiciousOperation ( Exception ): "" "Пользователь сделал что-то подозрительное" ""
class SuspiciousMultipartForm ( SuspiciousOperation ): "" "Подозрительный запрос MIME в данных многостраничной формы" "" пройти class SuspiciousFileOperation ( SuspiciousOperation ): "" "Попытка выполнить подозрительную операцию с файловой системой" "" пройти class DisallowedHost ( SuspiciousOperation ): "" "Заголовок HTTP_HOST содержит недопустимое значение" "" pass class DisallowedRedirect ( SuspiciousOperation ): "" "Перенаправить на схему не в разрешенном списке" "" пройти class TooManyFieldsSent ( SuspiciousOperation ): "" " Количество полей в запросе GET или POST превышено настройками.DATA_UPLOAD_MAX_NUMBER_FIELDS. " "" pass class RequestDataTooBig ( SuspiciousOperation ): "" " Размер запроса (без учета загрузки файлов) превысил настройки.DATA_UPLOAD_MAX_MEMORY_SIZE. " "" пройти
[docs] class RequestAborted ( Exception ): "" "Запрос был закрыт до того, как он был завершен, или истекло время ожидания." "" pass
[docs] class PermissionDenied ( Exception ): "" "У пользователя не было разрешения на выполнение этого" "" прохода
[docs] class ViewDoesNotExist ( Exception ): "" "Запрошенное представление не существует" "" пройти
[docs] class MiddlewareNotUsed ( Exception ): "" "Это промежуточное ПО не используется в этой конфигурации сервера" "" проход
[docs] class ImproperlyConfigured ( Exception ): "" "Django неправильно настроен" "" пройти
[docs] class FieldError ( Exception ): "" "Какая-то проблема с полем модели." "" pass
NON_FIELD_ERRORS = '__all__'
[docs] class ValidationError ( Exception ): "" "Ошибка при проверке данных." "" def __init__ ( self , message , code = None , params = None ): "" " Аргумент` message` может быть единственной ошибкой , список ошибок или словарь, который сопоставляет имена полей со списками ошибок. То, что мы определяем как «ошибку», может быть либо простой строкой, либо экземпляром ValidationError с установленным атрибутом сообщения, и тем, что мы определяем как list или словарь может быть фактическим `list` или` dict` или экземпляром ValidationError с установленным атрибутом` error_list` или` error_dict`. "" " super () . __init__ ( сообщение , код , параметры ) if isinstance ( message , ValidationError ): if hasattr ( message , 'error_dict' ): message = message . error_dict elif not hasattr ( message , 'сообщение' ): message = message . error_list else : сообщение , код , params = message . сообщение , сообщение . код , сообщение, Титулы if isinstance ( message , dict ): self . error_dict = {} для поля , сообщения в сообщении . items (): если не isinstance ( messages , ValidationError ): messages = ValidationError ( messages ) self . error_dict [ поле ] = сообщения . error_list elif isinstance ( сообщение , список ): self . error_list = [] для сообщения в сообщении : # Нормализовать простые строки в экземпляры ValidationError. если не isinstance ( message , ValidationError ): message = ValidationError ( message ) if hasattr ( message , 'error_dict' ): self . error_list . продлить ( сумма( message . error_dict . values (), [])) else : self . error_list . расширить ( сообщение . список_ошибок ) еще : я . message = собственное сообщение . код = код самостоятельно . params = params self . error_list = [ сам ] @property def message_dict ( self ): # Вызвать AttributeError, если эта ValidationError # не имеет error_dict. getattr ( сам , 'error_dict' ) return dict ( сам ) @property def messages ( self ): if hasattr ( self , 'error_dict' ): return sum ( dict ( self ) . values (), []) список возврата ( self ) def update_error_dict ( self , error_dict ): if hasattr ( self , 'error_dict' ): для поля , error_list в self . error_dict . items (): error_dict . setdefault ( поле , []) . расширить ( список_ошибок ) еще : error_dict . setdefault ( NON_FIELD_ERRORS , []) . продлить (я . error_list ) вернуть error_dict def __iter__ ( self ): if hasattr ( self , 'error_dict' ): для поля , ошибки в self . error_dict . items (): поле yield , list ( ValidationError ( errors )) else : для ошибки в self . список_ошибок : сообщение = ошибка . если сообщение об ошибке . параметры : сообщение % = ошибка . params yield str ( сообщение ) def __str__ ( self ): if hasattr ( self , 'error_dict' ): return repr ( dict ( self )) return repr ( list ( self )) def __repr__ ( self ): return 'ValidationError ( % s )' % self
[docs] class EmptyResultSet ( Exception ): "" "Предикат запроса к базе данных невозможен." "" pass
[docs] class SynchronousOnlyOperation ( Exception ): "" "Пользователь попытался вызвать функцию только для синхронизации из асинхронного контекста." "" pass

Copyright ©2020 All rights reserved