Exemplo n.º 1
0
    def post(self):
        data = parser.parse_args()
        user = UserModel.check_for_conflict(
            args={'username': data['username']})
        if user.json['user']:
            return {
                'status': 409,
                'message': 'username {} exists'.format(data['username'])
            }, 409

        new_user = UserModel({
            "username":
            data['username'],
            "password":
            UserModel.generate_hash(data['password'])
        })
        try:
            new_user.save()
            access_token = create_access_token(identity=data['username'])
            refresh_token = create_refresh_token(identity=data['username'])
            return {
                'status': 200,
                'message': 'User created',
                'access_token': access_token,
                'refresh_token': refresh_token
            }
        except Exception as err:
            print(err.args)
            return {
                'status': 500,
                'message': 'Something went horribly wrong'
            }, 500