Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #/src/views/UserView
- from flask import request, json, Response, Blueprint
- from ..models.UserModel import UserModel, UserSchema
- from ..shared.Authentication import Auth
- user_api = Blueprint('users', __name__)
- user_schema = UserSchema()
- @user_api.route('/', methods=['POST'])
- def create():
- """
- Create User Function
- """
- req_data = request.get_json()
- data, error = user_schema.load(req_data)
- if error:
- return custom_response(error, 400)
- # check if user already exist in the db
- user_in_db = UserModel.get_user_by_email(data.get('email'))
- if user_in_db:
- message = {'error': 'User already exist, please supply another email address'}
- return custom_response(message, 400)
- user = UserModel(data)
- user.save()
- ser_data = user_schema.dump(user).data
- token = Auth.generate_token(ser_data.get('id'))
- return custom_response({'jwt_token': token}, 201)
- def custom_response(res, status_code):
- """
- Custom Response Function
- """
- return Response(
- mimetype="application/json",
- response=json.dumps(res),
- status=status_code
- )
Add Comment
Please, Sign In to add comment