Always register URL rules. This fixes #81

This commit is contained in:
Armin Ronacher 2010-07-13 23:14:53 +02:00
parent 6e52355eb3
commit ed16ae2183
3 changed files with 13 additions and 8 deletions

View file

@ -13,6 +13,10 @@ Release date to be announced, codename to be decided.
- OPTIONS is now automatically implemented by Flask unless the
application explictly adds 'OPTIONS' as method to the URL rule.
In this case no automatic OPTIONS handling kicks in.
- static rules are now even in place if there is no static folder
for the module. This was implemented to aid GAE which will
remove the static folder if it's part of a mapping in the .yml
file.
Version 0.5.1
-------------

View file

@ -271,11 +271,14 @@ class Flask(_PackageBoundObject):
#: app.url_map.converters['list'] = ListConverter
self.url_map = Map()
# if there is a static folder, register it for the application.
if self.has_static_folder:
self.add_url_rule(self.static_path + '/<path:filename>',
endpoint='static',
view_func=self.send_static_file)
# register the static folder for the application. Do that even
# if the folder does not exist. First of all it might be created
# while the server is running (usually happens during development)
# but also because google appengine stores static files somewhere
# else when mapped with the .yml file.
self.add_url_rule(self.static_path + '/<path:filename>',
endpoint='static',
view_func=self.send_static_file)
#: The Jinja2 environment. It is created from the
#: :attr:`jinja_options`.

View file

@ -366,9 +366,7 @@ class _PackageBoundObject(object):
.. versionadded:: 0.5
"""
template_folder = os.path.join(self.root_path, 'templates')
if os.path.isdir(template_folder):
return FileSystemLoader(template_folder)
return FileSystemLoader(os.path.join(self.root_path, 'templates'))
def send_static_file(self, filename):
"""Function used internally to send static files from the static