Каждый раз, когда я пытаюсь создать какой-либо свой экземпляр модели через администратора django, он выдает мне 500 Internal Server Error, а в логах он показывает
response = get_response(request)
File "/opt/python/run/venv/local/lib/python3.6/site-packages/django/utils/deprecation.py", line 94, in __call__
response = response or self.get_response(request)
....
File "/opt/python/run/venv/lib64/python3.6/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
моя модель "тестирования" довольно проста,
from django.db import models
class testing(models.Model):
testing_text = models.CharField(max_length=500)
После регистрации в admin.py, как и ожидалось, выдает правильную текстовую форму.Но когда я нажимаю сохранить, это выдает мне ошибки выше.
Вот странная вещь, с локальным sqlite, тот же самый код прекрасно работает локально с sqlite.Но не с MySQL RDS на сервере.А также, все другие модели по умолчанию, такие как Пользователь, Группа, могут быть созданы на сервере без проблем.Это только те, которые я делаю.
Тот же код и работает, как и ожидалось, на локальной машине.Но не на AWS.Поэтому я активировал и проверил кодировку Python по умолчанию, используя venv, и запустил
sys.getdefaultencoding()
, и он возвращает utf-8.Поэтому я очень смущен тем, что здесь происходит.