Как отфильтровать URL проекта из правил URL? - PullRequest
0 голосов
/ 27 мая 2019

Я хочу создать меню веб-сайта и позволить администратору выбирать из известного URL-адреса в flask-admin для этого у меня есть основной проект, и у него есть некоторые конечные точки, я хочу сделать функцию, которая будет возвращать известные конечные точки для модели меню для выбора администратором.правильный URL и запакуйте его с данными.

Я пробовал цикл для правила в app.url_map.iter_rules ():

@app.route("/site-map")
def site_map():
    links = []
    for rule in app.url_map.iter_rules():
        # Filter out rules we can't navigate to in a browser
        # and rules that require parameters

        if "GET" in rule.methods and has_no_empty_params(rule):
            url = url_for(rule.endpoint, **(rule.defaults or {}))
        links.append(rule.endpoint)

    return render_template("all_links.html", links=links)

Но приведенный выше код дает мне все маршруты также дляколба-админ

1 Ответ

0 голосов
/ 28 мая 2019

Просто добавьте дополнительный тест, чтобы отфильтровать конечные точки для admin.:

if "GET" in rule.methods \
  and has_no_empty_params(rule) \
  and not rule.endpoint.startswith("admin."):
    # Add link to list of links
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...