コード例 #1
0
def update_user_me(
    *,
    password: str = Body(None),
    full_name: str = Body(None),
    email: EmailStr = Body(None),
    current_user: UserInDB = Depends(get_current_active_user),
):
    """
    Update own user.
    """
    user_in = UserUpdate(**current_user.dict())
    if password is not None:
        user_in.password = password
    if full_name is not None:
        user_in.full_name = full_name
    if email is not None:
        user_in.email = email
    bucket = get_default_bucket()
    user = crud.user.update(bucket, username=current_user.username, user_in=user_in)
    return user
コード例 #2
0
def update_user_me(
    *,
    db: Session = Depends(get_db),
    password: str = Body(None),
    full_name: str = Body(None),
    email: EmailStr = Body(None),
    current_user: DBUser = Depends(get_current_active_user),
):
    """
    Update own user.
    """
    current_user_data = jsonable_encoder(current_user)
    user_in = UserUpdate(**current_user_data)
    if password is not None:
        user_in.password = password
    if full_name is not None:
        user_in.full_name = full_name
    if email is not None:
        user_in.email = email
    user = crud.user.update(db, user=current_user, user_in=user_in)
    return user
コード例 #3
0
ファイル: user.py プロジェクト: muslax/gaia-fastapi-demo
async def update_user_me(
        *,
        password: str = Body(None),
        fullname: str = Body(None),
        email: EmailStr = Body(None),
        current_user: UserInDB = Depends(get_current_active_user),
        db: DBClient = client):
    """
    Update own user
    """
    # user_in = UserUpdate(**current_user.dict())
    user_in = UserUpdate(**current_user)
    if password is not None:
        user_in.password = password
    if fullname is not None:
        user_in.fullname = fullname
    if user_in.email is not None:
        user_in.email = email
    user = await crud.update(db, current_user["_id"], user_in)
    if user:
        return utils.create_aliased_response(UserResponse(response=user))
    return utils.create_404_response()
コード例 #4
0
ファイル: user.py プロジェクト: Grey2k/dougliz-wedding
    def update(self, obj: T, updated: UserUpdate) -> T:
        """Updates an existing User object.

        Parameters
        ----------
        obj : User
            The existing user to update.
        updated : UserUpdate
            The updated user data to use.

        Returns
        -------
        User
            The updated user object.

        """
        if updated.person:
            updated.person = self._uow.person.get_create_or_update(
                obj.person, updated.person)
        if updated.password:
            obj.hashed_password = get_password_hash(updated.password)
            updated.password = None
        return super().update(obj, updated)