Api does not have register attribute. flask_restplus

Создаю небольшое Апи на фласке. При помощи flask_restplus пытаюсь создать Namespace для одного из контроллеров в приложении:

# controllers/catalog_controller.py

from flask_restplus import Namespace, Resource

catalog_namespace = Namespace('catalogs', description='Catalogs CRUD')

@catalog_namespace.route('/')
class CatalogResource(Resource):
...

После чего создаю Api, как показано в документации тут:

# controllers/__init__.py

from flask import Blueprint
from flask_restplus import Api

from controllers.catalog_controller import catalog_namespace

api_bp = Blueprint('Terminology API', __name__, url_prefix='api/')
api = Api(api_bp, title='My Title', version='1.0', description='A description',)

api.add_namespace(catalog_namespace)

Эти два этапа отрабатывают без ошибок. Проблема в следующем:

# app.py

from flask import Flask

from dotenv import load_dotenv
load_dotenv()

from controllers import api


app = Flask(__name__)

app.register_blueprint(api)

if __name__ == '__main__':
    app.run(debug=True)

На строчке app.register_blueprint(api) выскакивает ошибка:

AttributeError: Api does not have register attribute

Уже не первые сутки бьюсь с этой проблемой. В интернете почти ничего нет. На руках есть проект с точно такой же реализацией и там все работает как часы. Прошу помощи.

UPD: Разобрался. Я пытался зарегистрировать api, которая не является блюпринтом. Нужно было в app.py прописывать app.register_blueprint(api_bp)


Ответы (1 шт):

Автор решения: Gespover

Разобрался. Я пытался зарегистрировать api, которая не является блюпринтом. Нужно было в app.py прописывать app.register_blueprint(api_bp)

→ Ссылка