Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from flask import Flask
- import pkgutil
- import sys
- app = Flask(__name__)
- EXTENSIONS_DIR = "extensions"
- modules = pkgutil.iter_modules(path=[EXTENSIONS_DIR])
- for loader, mod_name, ispkg in modules:
- if mod_name not in sys.modules:
- # It imports fine
- loaded_mod = __import__(EXTENSIONS_DIR+"."+mod_name+"."+mod_name, fromlist=[mod_name])
- # It does not register
- app.register_blueprint(loaded_mod)
- /root
- /extensions
- /extension1
- __init__.py
- extension1.py
- /extension2
- __init__.py
- extension2.py
- simple_example.py
- >python simple_example.py
- Traceback (most recent call last):
- File "simple_example.py", line 14, in <module>
- app.register_blueprint(loaded_mod)
- File "C:Python27libsite-packagesflaskapp.py", line 62, in wrapper_func
- return f(self, *args, **kwargs)
- File "C:Python27libsite-packagesflaskapp.py", line 880, in register_blueprint
- if blueprint.name in self.blueprints:
- AttributeError: 'module' object has no attribute 'name'
- from flask import Blueprint
- extension1 = Blueprint('extension1', __name__)
- @extension1.route("/my_route")
- def treasure_list():
- return "list of objects"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement