주석은 다른 사람의 시간을 획기적으로 줄여줍니다.
@transaction.atomic
def update_user(self, user, data: OrderedDict) -> User:
"""이 함수는 유저 데이터를 받아 이메일 중복 확인 후 유저 정보를 수정합니다.
Args:
user (User): 유저 객체
data (dict): 수정할 데이터
Returns:
User: 유저 객체
"""
# 이메일 중복 확인
if self._user_selector.exists_by_email_excluding_self(email=data["email"], user=user):
raise AlreadyExistsException(
detail=SYSTEM_CODE.message("ALREADY_EXISTS_EMAIL"),
code=SYSTEM_CODE.code("ALREADY_EXISTS_EMAIL"),
)
fields = ["name", "email"]
user, has_updated = update_model(instance=user, fields=fields, data=data)
return user