Рубрики
Без рубрики

Флэк: Список маршрутов

Получите список маршрутов в приложении Flask. Теги с Python, WebDev.

Обновление: начиная с Колба 1.0 Есть встроенный Флэк-маршруты команда

Одна из классных вещей о рельсах – Рельсы маршруты (Ex Reark Marross ), который показывает на консоли, список маршрутов, зарегистрированных в приложении.

У меня есть колбное приложение из разных видов и Чертежи Что, как оно становится все более крупным и сложным, трудно запомнить все зарегистрированные маршруты.

Я гурил за «список маршрутов колбы» и оказался на Старый фрагмент который ломается в последних версиях колба.

Это рабочая версия:

@app.cli.command()
def routes():
    'Display registered routes'
    rules = []
    for rule in app.url_map.iter_rules():
        methods = ','.join(sorted(rule.methods))
        rules.append((rule.endpoint, methods, str(rule)))

    sort_by_rule = operator.itemgetter(2)
    for endpoint, methods, rule in sorted(rules, key=sort_by_rule):
        route = '{:50s} {:25s} {}'.format(endpoint, methods, rule)
        print(route)
  • @ app.cli.command () Рассказывает Flask CLI для регистрации команды маршруты
  • Линия sort_by_rule.itemgetter (2) Используется для создания функции (используется в следующей строке для сортировки), которая извлекает элемент в позиции № 2 в списке. Таким образом, Python сортирует результаты по этому пункту.

Это пример результата:

$ flask routes
frontend.index                                     GET,HEAD,OPTIONS          /
frontend.index                                     GET,HEAD,OPTIONS          /
admin.index                                        GET,HEAD,OPTIONS          /admin/
product.index_view                                 GET,HEAD,OPTIONS          /admin/product/
api.products_show                                  GET,HEAD,OPTIONS          /api/v1/products/
rq_dashboard.overview                              GET,HEAD,OPTIONS          /jobs/
frontend.static                                    GET,HEAD,OPTIONS          /static/

Оригинал: “https://dev.to/rhymes/flask-list-of-routes-4hph”