Выполнив:
(env) luis@ux-pc:~/projects/administrador-webapp-django$ python3 manage.py createsuperuser
Nombre de usuario (leave blank to use 'luis'): superusername
У меня выходят ошибка Unicode:
Traceback (most recent call last):
File "manage.py", line 15, in <module>
execute_from_command_line(sys.argv)
File "/home/luis/projects/administrador-webapp-django/env/lib/python3.5/site-packages/django/core/management/__init__.py", line 38
1, in execute_from_command_line
utility.execute()
File "/home/luis/projects/administrador-webapp-django/env/lib/python3.5/site-packages/django/core/management/__init__.py", line 37
5, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/luis/projects/administrador-webapp-django/env/lib/python3.5/site-packages/django/core/management/base.py", line 316, i
n run_from_argv
self.execute(*args, **cmd_options)
File "/home/luis/projects/administrador-webapp-django/env/lib/python3.5/site-packages/django/contrib/auth/management/commands/crea
tesuperuser.py", line 61, in execute
return super().execute(*args, **options)
File "/home/luis/projects/administrador-webapp-django/env/lib/python3.5/site-packages/django/core/management/base.py", line 353, i
n execute
output = self.handle(*args, **options)
File "/home/luis/projects/administrador-webapp-django/env/lib/python3.5/site-packages/django/contrib/auth/management/commands/crea
tesuperuser.py", line 140, in handle
input_value = self.get_input_data(field, message)
File "/home/luis/projects/administrador-webapp-django/env/lib/python3.5/site-packages/django/contrib/auth/management/commands/crea
tesuperuser.py", line 195, in get_input_data
raw_value = input(message)
UnicodeEncodeError: 'ascii' codec can't encode character '\xf3' in position 7: ordinal not in range(128)
Это происходит, когда попробовал создавать пользователь, я искал UnicodeEncodeError: 'ascii' codec can't encode character '\xf3' in position 7: порядковый not in range (128) и я не встретил проблемы
Если какой-либо произошел с ним и это решил, я прошу, чтобы porfavor они имели мне решение, нуждаюсь в том, чтобы продвинуться в проекте, который у меня есть.
В stacktrace , что образцы он может, повернул в Гєltima lГ-neas (что, где нужно начинать расшифровывать ошибку):
raw_value = input(message)
UnicodeEncodeError: 'ascii' codec can't encode character '\xf3' in position 7: ordinal not in range(128)
Гєltima lГ-nea показывает проблему (попробовав декодировать один байт стоимости f3
, как ascii, он не был способен, что нормальное, потому что ascii он не имеет cГіdigos такие высокие, будучи Гєltimo 7f
).
lГ-nea предыдущий показывает тебе в quГ© момент тебя cГіdigo шрифт surgiГі проблема и мы можем видеть, что это было, сделав один input()
. Г‰ste читает ввода estГЎndar то, что набивает пользователь, и по-видимому между набитым habГ - в один байт стоимости f3
, которая не ascii vГЎlido.
Тот факт, что появился один байт стоимости f3
, заставляет меня подозревать, что твой encoding был cp1252 (windows), или МЕЖДУНАРОДНАЯ ОРГАНИЗАЦИЯ ПО СТАНДАРТИЗАЦИИ-8859-1 ИЛИ МЕЖДУНАРОДНАЯ ОРГАНИЗАЦИЯ ПО СТАНДАРТИЗАЦИИ-8899-15 (tambiГ©n знакомые как latin1 и latin9, соответственно, tГ-пики в старых версиях Linux, так как современные используют utf8). У этих encodings, о которых я только что упомянул, есть все они в ней posiciГіn f3
характер ó
(или с тильдой).
Обычно python авто-обнаруживает encoding, использованный вводом estГЎndar, но видно, что в твоем случае он не удался, итак, (segГєn я hipГіtesis) ввод estГЎndar остается один из encodings, который mencionГ©, и python он взамен думает, что он ascii.
Иногда это происходит, если ввод estГЎndar приходит redireccionada из другой команды, в travГ©s pipe, как например:
$ cat fichero-datos.txt | python programa.py
В этом случае python обычно понимает, что Ваш ввод estГЎndar - ascii, и бить козырем, если то, что прибывает к нему из предыдущей команды, содержит байт не ascii.
К этим случаям, в которых она autodetecciГіn он не удается, ты можешь готовить так называемую переменную окружения PYTHONIOENCODING
с подходящей стоимостью. В нашем случае serГ - в (предполагая, что latin1
- encoding, действительно использованный вводом estГЎndar):
$ export PYTHONIOENCODING=latin1
$ python programa.py
# o tambien
$ cat fichero.txt | python programa.py
Доказательство размещая эту линию в файлах ".py" твоего проекта django как "manage.py" и "settings.py".
# -*- coding: utf-8 -*-
проверяет заблаговременно, что у тебя были миграции
python manage.py makemigrations
python manage.py migrate