J'essaie d'obtenir cela pour courir pendant un moment, mais apparemment en vain. J'ai une webApp qui demande aux données d'entrée utilisateur, qui sont alors engagées dans la DB. Lorsque je frappe Ajouter via le navigateur, les données sont transmises à la DB mais Werkzeug crachent un certain nombre d'erreurs, que j'ai détaillées ci-dessous dans la trace.
My View.py:
Traceback (most recent call last):
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask/app.py", line 2000, in __call__
return self.wsgi_app(environ, start_response)
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask/app.py", line 1991, in wsgi_app
response = self.make_response(self.handle_exception(e))
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask/app.py", line 1567, in handle_exception
reraise(exc_type, exc_value, tb)
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask/_compat.py", line 33, in reraise
raise value
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask/app.py", line 1988, in wsgi_app
response = self.full_dispatch_request()
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask/app.py", line 1641, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask/app.py", line 1544, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask/_compat.py", line 33, in reraise
raise value
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask/app.py", line 1639, in full_dispatch_request
rv = self.dispatch_request()
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask/app.py", line 1625, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/home/scire/programs/python/aalert/aalert/views.py", line 75, in insert
db.session.commit()
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/sqlalchemy/orm/scoping.py", line 157, in do
return getattr(self.registry(), name)(*args, **kwargs)
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/sqlalchemy/orm/session.py", line 801, in commit
self.transaction.commit()
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/sqlalchemy/orm/session.py", line 399, in commit
self.session.dispatch.after_commit(self.session)
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/sqlalchemy/event/attr.py", line 256, in __call__
fn(*args, **kw)
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask_sqlalchemy/__init__.py", line 231, in after_commit
models_committed.send(session.app, changes=list(d.values()))
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/blinker/base.py", line 267, in send
for receiver in self.receivers_for(sender)]
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/blinker/base.py", line 267, in <listcomp>
for receiver in self.receivers_for(sender)]
File "/home/scire/programs/python/aalert/env/lib/python3.5/site-packages/flask_whooshalchemy.py", line 239, in _after_flush
for model, values in bytype.iteritems():
AttributeError: 'dict' object has no attribute 'iteritems'
3 Réponses :
in python3 dict.items () code> fait la même chose que dict.iteritems () code> a fait à Python2. Il suffit de remplacer iteritems () code> avec les éléments () code>! P>
Op n'a pas écrit ce code. Il vient de profond de la pile de flacon.
J'ai récemment rencontré cette même erreur lors de la tentative d'utilisation de Flack-Sqlalchemy à Python3 et était presque bloquée. Ensuite, je me souviens que https://blog.miguelgrinberg.com/post/about-meleight/a > avait fait quelque chose comme ça avant et décidé de l'essayer p>
$ PIP Désinstallation Flacon-Whooshalchemy
$ pip install git + git: //github.com/miguelgrinberg/flask-whooshalchemy.git p>
Cela a fonctionné pour moi p>
https: // blog .miguelgrinberg.com / Post / The-Flask-Mega-Tutorial-Part-X-Full-Text-Recherche P>
profiter. .. p>
pip install flask-whooshalchemy3
Python 3? Les dicts n'ont pas cette méthode dans Python 3.
Il semble que
flask_whooshalchemy code> n'est pas compatible Python 3.Yep, on dirait que
flask_whooshalchemy code> n'est actuellement pas compatible Python 3. github.com/gyllstromk/flask-whooshachalchemy/pull/28 pour un python 3 Branche compatible (j'espère). Vous pouvez toujours essayer d'utiliser cette branche à la place?Demandé auparavant, voyez ceci: Stackoverflow.com/Questtions/30418481/...