Когда я запускаю тестовый сервер Django локально с ./manage.py runserver
, появляется много предупреждений (DeprecationWarning, RemovedInDjango20Warning), даже если их не должно быть по умолчанию (https://docs.djangoproject.com/en/2.2/releases/1.11/#deprecating-warnings-are-no-longer-loud-by-default).
Я поместил этот код в команду Django:
import warnings
warnings.simplefilter("ignore", DeprecationWarning)
warnings.simplefilter("ignore", RemovedInDjango20Warning)
, и он скрывает предупреждения для этой команды, но я не знаю, где его разместить, чтобы он скрывал все предупреждения глобально (пробовал в manage.py, settings.py, models.py, ...)
Я также пытался запустить python -W ignore manage.py runserver
, который должен сказать python не показывать предупреждения, но он все равно отображает всеПредупреждения.
Предупреждения выглядят так:
/.../venv/lib64/python3.6/site-packages/review/templatetags/review_tags.py:11: RemovedInDjango20Warning: assignment_tag() is deprecated. Use simple_tag() instead @register.assignment_tag
или
/.../models/results.py: RemovedInDjango20Warning: on_delete will be a required arg for ForeignKey in Django 2.0. Set it to models.CASCADE on models and in existing migrations if you want to maintain the current default behavior
Одной из возможностей будет обновить версию Django и внести все изменения, предложенные предупреждениями, но это будетслишком долго, и я просто хочу скрыть эти предупреждения.