0
from flask_restx import Resource, Namespace, fields

api_users = Namespace("", description="")
    
login_model = api_users.model(
    "LoginModel",
    {
        "email": fields.String(required=True, min_length=4, max_length=64),
        "password": fields.String(required=True, min_length=8, max_length=64),
    },
)

@api_users.route('/api/users/login')
class Login(Resource):

    @api_users.expect(login_model, validate=True)
    def post(self):
        """Logins user by taking 'login_model' input and returns JWT token"""
        # code
        return

The code returns the below error:

flask_api  |   File "/usr/local/lib/python3.7/site-packages/flask_restx/api.py", line 571, in __schema__
flask_api  |     self._schema = Swagger(self).as_dict()
flask_api  |   File "/usr/local/lib/python3.7/site-packages/flask_restx/swagger.py", line 268, in as_dict
flask_api  |     "definitions": self.serialize_definitions() or None,
flask_api  |   File "/usr/local/lib/python3.7/site-packages/flask_restx/swagger.py", line 625, in serialize_definitions
flask_api  |     for name, model in iteritems(self._registered_models)
flask_api  |   File "/usr/local/lib/python3.7/site-packages/flask_restx/swagger.py", line 625, in <genexpr>
flask_api  |     for name, model in iteritems(self._registered_models)
flask_api  |   File "/usr/local/lib/python3.7/site-packages/flask_restx/model.py", line 76, in __schema__
flask_api  |     schema = self._schema
flask_api  |   File "/usr/local/lib/python3.7/site-packages/flask_restx/model.py", line 160, in _schema
flask_api  |     if field.required:
flask_api  | AttributeError: 'Model' object has no attribute 'required'

flask-restx==0.5.1 is used

Tried using different versions of flask-restx and also tried to remove the required parameter to test the function but still throws the same error.

0 Answers0