Flask 烧瓶管理不正确的相对url

Flask 烧瓶管理不正确的相对url,flask,flask-admin,Flask,Flask Admin,我正在尝试创建一个简单的管理员来编辑mongo集合。我已经把代码贴在下面了。它可以在本地或作为docker容器完美地工作。然而,当我在我们的微服务架构中部署此应用程序时,该应用程序位于:SERVER\u NAME/TEAM\u NAME/app\u NAME/ 使用@app.route设置的烧瓶路由工作正常。但是,管理模板中的URL不正确,总是直接从服务器名称开始,忽略团队名称和应用程序名称。实际页面和资源位于正确的URL,但找不到静态资源的URL。如何确保flask admin中生成的url也

我正在尝试创建一个简单的管理员来编辑mongo集合。我已经把代码贴在下面了。它可以在本地或作为docker容器完美地工作。然而,当我在我们的微服务架构中部署此应用程序时,该应用程序位于:SERVER\u NAME/TEAM\u NAME/app\u NAME/

使用@app.route设置的烧瓶路由工作正常。但是,管理模板中的URL不正确,总是直接从服务器名称开始,忽略团队名称和应用程序名称。实际页面和资源位于正确的URL,但找不到静态资源的URL。如何确保flask admin中生成的url也考虑了相对url

守则:

import os
import flask_admin
from wtforms import form, fields
from flask_admin.contrib.pymongo import ModelView, filters


# User admin
class WordPairsForm(form.Form):
    text = fields.StringField("Text")
    language = fields.SelectField("Language", choices=[("de", "german"), ("en", "english"), ("pl", "polish")])
    label = fields.SelectField("Label", choices=[("badword", "bad word"), ("no_stay", "no overnight stay")])
    active = fields.BooleanField("Active", default="checked")


class WordPairsView(ModelView):
    column_list = ("text", "language", "label", "active")
    column_sortable_list = ("text", "language", "label", "active")
    column_searchable_list = ("text",)
    column_filters = (
        filters.FilterLike("text", "Text"),
        filters.FilterNotLike("text", "Text"),
        filters.FilterEqual("language", "Language", options=[("de", "german"), ("en", "english"), ("pl", "polish")]),
        filters.FilterEqual("label", "Label", options=[("badword", "bad word"), ("no_stay", "no overnight stay")]),
        filters.BooleanEqualFilter("active", "Active")
    )
    form = WordPairsForm

    def create_form(self):
        _form = super(WordPairsView, self).create_form()
        return _form

    def edit_form(self, obj):
        _form = super(WordPairsView, self).edit_form(obj)
        return _form

    def get_list(self, *args, **kwargs):
        count, data = super(WordPairsView, self).get_list(*args, **kwargs)

        return count, data

    def get_url


def add_admin(app):
    admin = flask_admin.Admin(
        app,
        name="CQAS Admin",
        url=os.getenv(
            "F_ADMIN_URL",
            "/admin"
        ),
        static_url_path=os.getenv("F_ADMIN_STATIC_URL", None),
        subdomain=os.getenv("F_ADMIN_SUBDOMAIN", None),
        endpoint=os.getenv("F_ADMIN_ENDPOINT", None)
    )
    admin.add_view(WordPairsView(app.data.data, "WordPairs"))

我不确定这些是否相关,因为我没有直接尝试过这样做,但您指定的关键字params确实让我想起了几个月前我们转换为工厂模型时读到的一个答案:如果这没有帮助,如果您可以将其归结为MCVE,您可能会获得更大的吸引力。