コード例 #1
0
ファイル: users.py プロジェクト: nahidsaikat/Learning
def user_update(email):
    error = None
    actions = []
    data = {}

    try:
        data = UserSchema().load(request.json)
    except ValidationError as err:
        error = err

    for key, value in data.items():
        actions.append(getattr(UserModel, key).set(value))
    user = UserModel.get(email)
    user.update(actions=actions)

    return {
        "status": "error" if error else "success",
        "error": error,
        "data": UserSchema().dump(user)
    }
コード例 #2
0
ファイル: users.py プロジェクト: nahidsaikat/Learning
def user_create():
    error = None
    data = request.json
    try:
        data = UserSchema().load(request.json)
    except ValidationError as err:
        error = err
    if not error:
        user = UserModel(**data)
        user.save()
    return {
        "status": "error" if error else "success",
        "error": error,
        "data": data
    }
コード例 #3
0
ファイル: auth.py プロジェクト: Ins-V/simple-todo-list-api
    def create_token(cls, user: User) -> TokenSchema:
        """Token creation method.

        Args:
            user (User): User model instance.

        Returns:
            The created token object.
        """
        user_data = UserSchema.from_orm(user)
        now = datetime.utcnow()

        token = jwt.encode(
            {
                'iat': now,
                'nbf': now,
                'exp': now + timedelta(seconds=settings.token_expires),
                'sub': str(user_data.id),
                'user_id': str(user_data.id)
            },
            settings.secret_key,
            algorithm=settings.crypt_algorithm)

        return TokenSchema(access_token=token)
コード例 #4
0
from schemas.users import UserSchema
from werkzeug.security import safe_str_cmp
from marshmallow import ValidationError
import json
from flask_jwt_extended import (
    create_access_token,
    create_refresh_token,
    jwt_required,
    get_jwt_identity
)

BLANK_ERROR = "{} cannot be left blank!"
CREDENTIAL_ERROR = "Invalid Credentials."
RETRIEVAL_ERROR = "Error retrieving user."

user_schema = UserSchema()


class CurrentUser(Resource):
    @jwt_required()
    def get(self):
        try:
            user_id = get_jwt_identity()
            user = UserModel.find_by_id(user_id)
            if user is not None:
                return {"success": True, "user": user.json()}, 200
        except ValidationError as err:
            return err.messages, 400
        return {"success": False, "message": RETRIEVAL_ERROR}

コード例 #5
0
from flask import request
from flask_restful import Resource
from flask_jwt_extended import create_access_token, jwt_required, get_raw_jwt, get_jwt_claims

from blacklist import blacklist
from models.users import User
from schemas.users import UserSchema

User_schema = UserSchema()
User_list_schema = UserSchema(many=True)


class UserLogin(Resource):
    @classmethod
    def post(cls):
        email = request.form["email"]
        password = request.form["password"]
        user = User.authenticate(email, password)
        if not user:
            return {"msg": "Password ou email incorretos"}, 401

        access_token = create_access_token(identity={
            "email": user.email,
            "id": user.idUser
        })
        return {
            'access_token': "Bearer " + access_token,
            'idUser': user.idUser
        }, 200

    @classmethod
コード例 #6
0
from models.users import UserModel
from schemas.users import UserSchema
from utils.extensions import db
user_schema = UserSchema()
users_schema = UserSchema(many=True)

def get_user_by_user_id(user_id):
    return UserModel.query.filter(user_id == UserModel.user_id).first()

def get_user_by_username(username):
    return UserModel.query.filter(username == UserModel.username).first()

def get_all_user():
    return UserModel.query.filter().all()

def db_commit():
    return db.session.commit()

def db_add(user):
    return db.session.add(user)

def db_delete(user):
    return db.session.delete(user)
コード例 #7
0
ファイル: users.py プロジェクト: nahidsaikat/Learning
def user_list():
    return {"user_list": UserSchema(many=True).dump(UserModel.scan())}