예제 #1
0
def add_users():
    if request.method == "POST":

        username = request.json['username']

        if Users.query.filter_by(username=username).first():
            return make_response({"err": "user already exist"}, 400)

        new_user = Users()
        new_user.email = request.json["email"]
        new_user.username = request.json["username"]
        new_user.fname = request.json["fname"]
        new_user.lname = request.json["lname"]
        new_user.role = request.json["role"]

        db.session.add(new_user)
        db.session.commit()

        token = ''.join(
            random.choices(string.ascii_uppercase + string.digits, k=20))

        user_authentication = UserAuthentication()
        user_authentication.username = username
        user_authentication.token = token
        db.session.add(user_authentication)
        db.session.commit()

        return make_response(
            {
                "user": UserSchema().dump(new_user),
                "token": token
            }, 200)

    all_users = Users.query.all()
    return make_response({"user": UserSchema(many=True).dump(all_users)}, 200)