Skip to content

Instantly share code, notes, and snippets.

@olt
Created October 10, 2011 09:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save olt/1274982 to your computer and use it in GitHub Desktop.
Save olt/1274982 to your computer and use it in GitHub Desktop.
Flask-Assets KeyError
raceback (most recent call last):
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/flask/app.py", line 1518, in __call__
return self.wsgi_app(environ, start_response)
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/flask/app.py", line 1506, in wsgi_app
response = self.make_response(self.handle_exception(e))
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/flask/app.py", line 1504, in wsgi_app
response = self.full_dispatch_request()
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/flask/app.py", line 1264, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/flask/app.py", line 1262, in full_dispatch_request
rv = self.dispatch_request()
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/flask/app.py", line 1248, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/Users/olt/dev/foo/experiments/assets/test_bundles.py", line 14, in hello
return render_template('test_bundles.html')
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/flask/templating.py", line 123, in render_template
context, ctx.app)
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/flask/templating.py", line 107, in _render
rv = template.render(context)
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/jinja2/environment.py", line 894, in render
return self.environment.handle_exception(exc_info, True)
File "/Users/olt/dev/foo/experiments/assets/templates/test_bundles.html", line 1, in top-level template code
{% assets "js-all" %}
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/webassets/ext/jinja2.py", line 102, in _render_assets
'filters': filter}).urls(env=env)
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/webassets/bundle.py", line 448, in urls
urls.extend(bundle._urls(env, extra_filters, *args, **kwargs))
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/webassets/bundle.py", line 421, in _urls
*args, **kwargs)
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/webassets/bundle.py", line 329, in _build
elif not path.exists(env.abspath(self.output)):
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/webassets/env.py", line 289, in abspath
return path.abspath(path.join(self.directory, filename))
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/webassets/env.py", line 260, in get_directory
return self.config['directory']
File "/Users/olt/dev/venv/foo/lib/python2.7/site-packages/flaskext/assets.py", line 70, in __getitem__
raise KeyError()
KeyError
from flask import Flask, render_template
from flaskext.assets import Environment, Bundle
app = Flask(__name__, static_path='/foo')
assets = Environment(app)
js = Bundle('jquery.js', 'base.js', 'widgets.js',
filters='jsmin', output='gen/packed.js')
assets.register('js-all', js)
@app.route("/")
def hello():
return render_template('test_bundles.html')
if __name__ == "__main__":
app.debug = True
app.run()
{% assets "js-all" %}
<script type="text/javascript" src="{{ ASSET_URL }}"></script>
{% endassets %}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment