Advertisement
Guest User

Untitled

a guest
Jan 18th, 2017
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.99 KB | None | 0 0
  1. from users import users
  2. from users.models import User
  3. from flask import jsonify, request
  4. from sqlalchemy.exc import IntegrityError
  5. from http import HTTPStatus
  6. from exceptions import AlreadyExistsError, MalformedJsonError
  7. from application import db
  8.  
  9.  
  10. @users.route('', methods=['GET'])
  11. def list():
  12. users = User.query.all()
  13. return jsonify(User.serialize_list(users, exclude='id'))
  14.  
  15.  
  16. @users.route('', methods=['POST'])
  17. def add():
  18. data = request.get_json()
  19. try:
  20. user = User(
  21. username=data['username'],
  22. email=data['email'],
  23. password=data['password']
  24. )
  25. db.session.add(user)
  26. db.session.commit()
  27. except KeyError:
  28. raise MalformedJsonError()
  29. except IntegrityError as e:
  30. e = str(e)
  31. if 'Key (username)' in e:
  32. raise AlreadyExistsError('Username')
  33. elif 'Key (email)' in e:
  34. raise AlreadyExistsError('Email')
  35. return ('', HTTPStatus.NO_CONTENT)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement