Коли я намагаюся завантажити файл через FileField моєї моделі за допомогою адміністрації Django, я отримую відповідь від сервера розвитку Django:
<h1>Bad Request (400)</h1>
Єдиним виходом у консолі є:
[21/Jul/2013 17:55:23] "POST /admin/core/post/add/ HTTP/1.1" 400 26
Я спробував знайти журнал помилок, але після прочитання декількох відповідей тут я думаю, що нічого подібного немає, оскільки Django зазвичай друкує інформацію про налагодження безпосередньо у вікні браузера, коли Debug=True
(моя справа).
Як я можу налагодити цю проблему далі?
Відповіді:
14 за відповідь № 1У моєму випадку це був провідний символ "/" у model.py.
Змінено /products/
до products/
в:
product_image = models.ImageField(upload_to="products/")
4 для відповіді № 2
Перевірте місце завантаження. У мене також було 400, і в моєму випадку це було питання про дозвіл.
ПОМИЛКА 2013-12-15 19: 23: 37,044 база 22938 140546689459968 Спроба доступу до "/uploads/nook.jpg" спростована.
Налаштування журналювання, як показано тут, допомогло мені: https://docs.djangoproject.com/en/1.6/topics/logging/#configuring-logging
2 для відповіді № 3
Це правда, це іноді важко знайти журнал помилок в Django, але я виявити інший спосіб отримати журнал помилок, пов'язаних з Django.
встановіть пакунки django-db-log та налаштуйте settings.py pip install django-db-log --оновлення або проста установка django-db-log
DBLOG_CATCH_404_ERRORS = True # enable the catching
MIDDLEWARE_CLASSES=("djangodblog.DBLogMiddleware",)
INSTALL_APPS =("djangodblog",)
$ ./manage.py syncdb
Creating table djangodblog_error
Installing index for djangodblog.ErrorBatch model
..........
...........
Ваш проект django тепер запише всі свої виключення до таблиці djangodblog_error. Все, що нам зараз потрібно, - це виняток у переглядах або шаблонах для того, щоб програма вловлювала помилки.
прочитати це посилання у разі виникнення проблеми: https://github.com/dcramer/django-db-log