2 votes

Django-CMS : Unxpected keyword argument 'providing_args' (mot-clé inattendu)

J'ai installé un django-cms vanille sur un nouveau serveur. J'ai installé tous les pré-requis. Tout s'est bien passé, jusqu'au moment où j'ai voulu migrer vers la base de données (Postgres).

Voici donc ce que j'ai fait :

  1. J'ai essayé de réinstaller et de réinstaller le tout. Cela n'a rien changé.
  2. J'ai utilisé Google pour essayer de trouver des personnes ayant le même problème.
  3. J'ai essayé d'éditer le fichier de signaux sur lequel l'erreur se déclenche (voir ci-dessous), mais cela signifiait qu'il fallait tout réécrire, ce qui rendait toujours le système insensible.

Traceback :

  File "manage.py", line 22, in <module>
    main()
  File "manage.py", line 18, in main
    execute_from_command_line(sys.argv)
  File "/websites/fl/flvenv/lib/python3.8/site-packages/django/core/management/_                                                                                                                                                             _init__.py", line 425, in execute_from_command_line
    utility.execute()
  File "/websites/fl/flvenv/lib/python3.8/site-packages/django/core/management/_                                                                                                                                                             _init__.py", line 401, in execute
    django.setup()
  File "/websites/fl/flvenv/lib/python3.8/site-packages/django/__init__.py", lin                                                                                                                                                             e 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/websites/fl/flvenv/lib/python3.8/site-packages/django/apps/registry.py"                                                                                                                                                             , line 114, in populate
    app_config.import_models()
  File "/websites/fl/flvenv/lib/python3.8/site-packages/django/apps/config.py",                                                                                                                                                              line 300, in import_models
    self.models_module = import_module(models_module_name)
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 848, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/websites/fl/flvenv/lib/python3.8/site-packages/cms/models/__init__.py",                                                                                                                                                              line 12, in <module>
    from cms import signals as s_import  # nopyflakes
  File "/websites/fl/flvenv/lib/python3.8/site-packages/cms/signals/__init__.py"                                                                                                                                                             , line 16, in <module>
    page_moved = Signal(providing_args=["instance"])
TypeError: __init__() got an unexpected keyword argument 'providing_args'

Quelqu'un a une idée ? Ai-je raté quelque chose ? Merci de m'avoir accordé un peu de votre temps !

1voto

Adrian Gonzalez Points 15

Mise à niveau django-cors-headers con python -m pip install -U django-cors-headers résout ce problème.

0voto

Sneil Points 21

J'ai trouvé la réponse à ce problème. Si vous regardez la documentation de Django. Il s'agit de Django de la version 2.0 à la version 3.0.

Faire anciennement c'était :

pizza_done = django.dispatch.Signal(providing_args = ['toppings'])

c'est maintenant le cas :

Defining signals

All signals are django.dispatch.Signal instances.

For example:

import django.dispatch

pizza_done = django.dispatch.Signal()
This declares a pizza_done signal.

Fuente: https://docs.djangoproject.com/en/4.0/topics/signals/

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X