我当前正在尝试通过添加蓝图来重构多租户Flask应用,因为我的应用包含越来越多的路线...
我面临一个相当基本的问题,我的大多数路线都以“”开头,只要我不使用蓝图,该路线就可以正常工作。
app.py
@app.route('/<tenant>/api/auth/login', methods=['POST'])
def login(tenant):
...
当我在其中添加蓝图时 blueprint / auth / api.py
@app.route('/<tenant>/login', methods=['POST'])
def login(tenant):
...
然后我将它们注册到 app.py
app.register_blueprint(auth, url_prefix='/api/auth')
但是我不能像以前那样调用URL(以租户“ t1”为例)“ / t1 / api / auth / login”,路由现在为“ / api / auth / t1 / login”。我不想更改路线,因为这会弄乱我整个前端的反应。
有没有办法使用蓝图来实现此目的(以便我的租户在蓝图的url_prefix之前)?还是我的蓝图处理方法错误?
我想在路径中而不是在子域中拥有租户(所以t1.abc.com),因为那会导致其他问题。