Как использовать flask.url_for () с фляжкой?

У меня есть настройка Flask:

api = Api(app, decorators=[csrf_protect.exempt]) api.add_resource(FTRecordsAPI, '/api/v1.0/ftrecords/<string:ios_sync_timestamp>', endpoint="api.ftrecord") 

Я хотел бы перенаправить внутренне до конечной точки api.ftrecord .

Но как только я попытаюсь это сделать:

 base_url = flask.url_for('api.ftrecord') 

Я получаю исключение.

  File "/Users/hooman/workspace/F11A/src/lib/werkzeug/routing.py", line 1620, in build raise BuildError(endpoint, values, method) BuildError: ('api.ftrecord', {}, None) 

Что я пропущу, пожалуйста?

3 Solutions collect form web for “Как использовать flask.url_for () с фляжкой?”

Вам нужно указать значение для части URL-адреса ios_sync_timestamp :

 flask.url_for('api.ftrecord', ios_sync_timestamp='some value') 

или вы можете использовать Api.url_for() , который берет ресурс:

 api.url_for(FTRecordsAPI, ios_sync_timestamp='some value') 

У меня была эта проблема сегодня. Вот запрос на перенос, который добавил функциональность (11 месяцев назад):

https://github.com/twilio/flask-restful/pull/110

Вы можете увидеть его пример использования там.

В моем файле ресурсов у меня нет доступа к контексту приложения. Поэтому я должен был сделать это:

 from flask.ext import restful from flask import current_app api = restful.Api print api.url_for(api(current_app), UserResource, user_id=user.id, _external=True) 

Надеюсь, это поможет.

 api = Api(app, decorators=[csrf_protect.exempt]) api.add_resource(FTRecordsAPI, '/api/v1.0/ftrecords/<string:ios_sync_timestamp>', endpoint="api.ftrecord") with app.test_request_context(): base_url = flask.url_for('api.ftrecord') 

Я встретил ту же ошибку. Используя 'with app.test_request_context ():', он работает.

  • Отключить консольные сообщения в Flask server
  • Можно ли моделировать представления в гиперссылке Flask-Admin на другие виды моделей?
  • Поле множественного выбора доступа в колбе
  • Приложение для основной флэшки с after_request возвращает ошибку сервера
  • Работа с несколькими доменами в Flask
  • Невозможно отобразить изображение из STATIC_FOLDER в шаблоне Flask
  • Как я могу сгенерировать файл «на лету» и удалить его после загрузки?
  • Как использовать app.config.from_envvar? (Колба)
  • Как запустить действие для всех запросов в Flask?
  • Зачем использовать werkzeug, когда есть колба
  • Flask: перенаправить при передаче аргументов?
  • Python - лучший язык программирования в мире.