J'ai essayé de déboguer ce problème, mais je n'arrive pas à le comprendre. Lors du débogage, je peux voir que toutes les variables sont là où elles devraient être, mais je n'arrive pas à les sortir.Objet Python Django Dict non appelable
Lors de l'exécution je reçois le message d'erreur 'dict' object is not callable
Ceci est le message d'erreur complet de Django
Environment:
Request Method: GET
Request URL: http://127.0.0.1:8000/?form_base_currency=7&form_counter_currency=14&form_base_amount=127
Django Version: 1.8.6
Python Version: 3.4.3
Installed Applications:
['django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'client']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware']
Traceback:
File "/home/johan/sdp/currency-converter/lib/python3.4/site-packages/django/core/handlers/base.py" in get_response
132. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/johan/sdp/currency-converter/currency_converter/client/views.py" in index
22. form_base_currency = form.cleaned_data('form_base_currency').currency_code
Exception Type: TypeError at/
Exception Value: 'dict' object is not callable
Pour plus de clarté, j'ai ajouté une capture d'écran à partir des variables du débogueur.
Voici le code que j'utilise:
if request.method == 'GET':
form = CurrencyConverterForm(request.GET)
if form.is_valid():
form_base_currency = form.cleaned_data('form_base_currency').currency_code
form_counter_currency = form.cleaned_data('form_counter_currency')
form_base_amount = form.data.cleaned_data('form_base_amount')
Pour obtenir le fonctionnement form_base_currency J'ai essayé ces méthodes différentes:
form_base_currency = form.cleaned_data('form_base_currency').currency_code
form_base_currency = form.cleaned_data.form_base_currency.currency_code
form_base_currency = form.cleaned_data('form_base_currency.currency_code')
Aucun d'entre eux travaillent. Quelqu'un pourrait-il me dire comment je peux résoudre cela?
Merci beaucoup pour votre aide. –
@JohanVergeer - Pas de soucis, profitez-en! – Sayse