Erro: python manage.py sql polls

58 views
Skip to first unread message

Giuliano Richards Ribeiro

unread,
Sep 22, 2022, 10:33:58 AM9/22/22
to Django Brasil
Boa noite, estou digitando o comando acima e retorna este erro:

D:\Giuliano\django\site\mysite>python manage.py sql polls
Traceback (most recent call last):
  File "D:\Giuliano\django\site\mysite\manage.py", line 22, in <module>
    main()
  File "D:\Giuliano\django\site\mysite\manage.py", line 18, in main
    execute_from_command_line(sys.argv)
  File "C:\Users\11055\AppData\Local\Programs\Python\Python310\lib\site-packages\django\core\management\__init__.py", line 446, in execute_from_command_line
    utility.execute()
  File "C:\Users\11055\AppData\Local\Programs\Python\Python310\lib\site-packages\django\core\management\__init__.py", line 420, in execute
    django.setup()
  File "C:\Users\11055\AppData\Local\Programs\Python\Python310\lib\site-packages\django\__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "C:\Users\11055\AppData\Local\Programs\Python\Python310\lib\site-packages\django\apps\registry.py", line 116, in populate
    app_config.import_models()
  File "C:\Users\11055\AppData\Local\Programs\Python\Python310\lib\site-packages\django\apps\config.py", line 269, in import_models
    self.models_module = import_module(models_module_name)
  File "C:\Users\11055\AppData\Local\Programs\Python\Python310\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "D:\Giuliano\django\site\mysite\polls\models.py", line 7, in <module>
    class Choice(models.Model):
  File "D:\Giuliano\django\site\mysite\polls\models.py", line 8, in Choice
    poll = models.ForeignKey(Poll)
TypeError: ForeignKey.__init__() missing 1 required positional argument: 'on_delete'

Fabio C. Barrionuevo da Luz

unread,
Sep 22, 2022, 3:04:37 PM9/22/22
to django...@googlegroups.com

Olá Giuliano, o tutorial que você deve estar seguindo aparentemente foi planejado para Django <= 1.9, contudo em vez de usar a mesma versão do Django
que o tutorial usa, você está utilizando uma versão mais atual.

Tem duas maneiras de resolver isso:
1- A primeira é tornar o seu código compativel:

Apartir do Django 2.0, é obrigatório definir explicitamente o argumento on_delete do models.ForeignKey ou models.OneToOneField, ou seja
no seu código deve atualmente um pouco parecido com isto:

class Choice(models.Model):
     poll = models.ForeignKey(Poll)


Você tem que mudar a ForeignKey e incluir o on_delete

class Choice(models.Model):
     poll = models.ForeignKey(Poll, on_delete=models.CASCADE)


Feito isto, você precisa executar

python manage.py makemigrations
python manage.py migrate


2 - A segunda é instalar uma versão do django compativel com o tutorial


python -m pip install "Django==1.9"



--
Você recebeu essa mensagem porque está inscrito no grupo "Django Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para django-brasi...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/django-brasil/6452207a-45c0-45d3-ac61-4ba01c842a87n%40googlegroups.com.


--
Fábio C. Barrionuevo da Luz
Palmas - Tocantins - Brasil - América do Sul


Blog colaborativo sobre Python e tecnologias Relacionadas, mantido totalmente no https://github.com/pythonclub/pythonclub.github.io .

Todos são livres para publicar. É só fazer fork, escrever sua postagem e mandar o pull-request. Leia mais sobre como publicar em README.md e contributing.md.
Regra básica de postagem:
"Você" acha interessante? É útil para "você"? Pode ser utilizado com Python ou é útil para quem usa Python? Está esperando o que? Publica logo, que estou louco para ler...

Reply all
Reply to author
Forward
0 new messages