Ich übergebe eine Liste von Strings aus meiner Kolben-App an die HTML-Vorlage, was völlig in Ordnung ist, bis ich versuche, die Liste anzufügen. Ich habe meine Verwendung der Append-Methode mit einem clientseitigen Python-Skript getestet und es funktioniert. Ich bin perplex darüber, warum das Anhängen der Liste einen internen Serverfehler verursacht. Hier ist der Abschnitt meiner Vorlage, die verwendet die ParameterBluemix Python Flask App übergibt Listenparameter an Vorlage mit list.append()
<ul>
{% for file in files %}
<li>{{ file }}</li>
{% endfor %}
</ul>
Und hier ist die Strecke in meinem Kolben app
@app.route('/')
def main():
FILES = [ 'test1', 'test2' ]
# Iterate through each file in the cloud storage container
for container in conn.get_account()[1]:
for data in conn.get_container(container['name'])[1]:
print 'object: {0}t size: {1}t date: {2}'.format(data['name'], data['bytes'], data['last_modified'])
FILES.append('test3')
return render_template('index.html', files = FILES)
Die Linie FILES.append (‚test3‘) das Problem verursacht, aber ich Ich bin mir nicht sicher warum. Wenn ich diese Zeile kommentiere, wird die Liste wie erwartet an die Vorlage übergeben.
Hier ist das vollständige Zurückverfolgungs
Traceback (most recent call last):
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1836, in __call__
return self.wsgi_app(environ, start_response)
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1820, in wsgi_app
response = self.make_response(self.handle_exception(e))
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1403, in handle_exception
reraise(exc_type, exc_value, tb)
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1817, in wsgi_app
response = self.full_dispatch_request()
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1477, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1381, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1475, in full_dispatch_request
rv = self.dispatch_request()
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/flask/app.py", line 1461, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/home/vcap/app/server.py", line 93, in main
for container in conn.get_account()[1]:
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 1615, in get_account
full_listing=full_listing)
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 1553, in _retry
self.url, self.token = self.get_auth()
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 1507, in get_auth
timeout=self.timeout)
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 617, in get_auth
auth_version=auth_version)
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 517, in get_auth_keystone
ksclient, exceptions = _import_keystone_client(auth_version)
File "/home/vcap/app/.heroku/python/lib/python2.7/site-packages/swiftclient/client.py", line 502, in _import_keystone_client
variables to be set or overridden with -A, -U, or -K.''')
ClientException:
Auth versions 2.0 and 3 require python-keystoneclient, install it or use Auth
version 1.0 which requires ST_AUTH, ST_USER, and ST_KEY environment
variables to be set or overridden with -A, -U, or -K.
Scheint, wie das Anfügen nicht einen Fehler verursacht, aber man auszusetzen. Ich werde aktualisieren, sobald dies sortiert ist.
Was ist der tatsächliche Fehler? Bitte bearbeiten Sie Ihre Frage so, dass sie den vollständigen Traceback enthält. Wenn Sie nicht sicher sind, wo Sie es finden können, überprüfen Sie Ihre Protokolle oder aktivieren Sie den Debug-Modus. – dirn