Skip to content

Instantly share code, notes, and snippets.

@AmaxJ
Created June 14, 2015 23:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save AmaxJ/be76c6923b1b6dea5416 to your computer and use it in GitHub Desktop.
Save AmaxJ/be76c6923b1b6dea5416 to your computer and use it in GitHub Desktop.
user resource
from app import db
from app.models import User
from flask_restful import Resource, fields, marshal, reqparse
user_field = {
'id' : fields.Integer,
'username' : fields.String,
'email' : fields.String
}
class UsersAPI(Resource):
def __init__(self):
self.parser = reqparse.RequestParser()
self.parser.add_argument('username', type=str, required=True, location='json')
self.parser.add_argument('email', type=str, required=True, location='json')
self.parser.add_argument('password', type=str, required=True, location='json')
super(UsersAPI, self).__init__()
def get(self):
users = User.query.all()
return { 'users' : [marshal(user, user_field) for user in users]}
def post(self):
args = self.parser.parse_args()
newUser = User(username=args["username"],
email=args["email"])
newUser.hash_password(args["password"])
db.session.add(newUser)
db.session.commit()
users = User.query.all()
return {'users': [marshal(users, user_field) for user in users]}
def delete(self):
pass
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment