def new_user(): check_user_permissions(admin_required=True) username = request.json.get("username") password = request.json.get("passwd") ssh_key = request.json.get("ssh_key") expiration = request.json.get("expiration") email_addr = request.json.get("email") is_admin = request.json.get("is_admin") if username is None or password is None: print("User or passwd Null") abort(400) # missing arguments if Users.query.filter_by(username=username).first() is not None: abort(400) # existing user user = Users(username=username) user.hash_password(password) user.expiration = expiration user.ssh_key = ssh_key user.email_addr = email_addr user.is_admin = bool(is_admin) db.session.add(user) db.session.commit() return (jsonify({"username": user.username}), 201) # {'Location': url_for('get_user', id=user.id, _external=True)}) return get_user(user.id)
from app import db from app.models import Users # Bootstrap admin user admin = Users(username="******") admin.hash_password("cubs2020") admin.expiration = 90 admin.is_admin = True # Create all imported models + admin user db.create_all() db.session.add(admin) db.session.commit()