| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- from sqlalchemy.orm import Session
- from app.model.user_model import User
- class UserDAO:
- def __init__(self, db_session: Session):
- self.db_session = db_session
- def get_all(self):
- """获取所有用户"""
- return self.db_session.query(User).all()
- def get_by_id(self, user_id: int):
- """根据ID获取用户"""
- return self.db_session.query(User).get(user_id)
- def get_by_username(self, username: str):
- """根据用户名获取用户"""
- return self.db_session.query(User).filter_by(username=username).first()
- def get_by_email(self, email: str):
- """根据邮箱获取用户"""
- return self.db_session.query(User).filter_by(email=email).first()
- def create(self, user: User):
- """创建新用户"""
- self.db_session.add(user)
- self.db_session.commit()
- return user
- def update(self, user: User):
- """更新用户信息"""
- self.db_session.commit()
- return user
- def delete(self, user: User):
- """删除用户"""
- self.db_session.delete(user)
- self.db_session.commit()
- def exists_by_username(self, username: str):
- """检查用户名是否已存在"""
- return self.db_session.query(User).filter_by(username=username).first() is not None
- def exists_by_email(self, email: str):
- """检查邮箱是否已存在"""
- return self.db_session.query(User).filter_by(email=email).first() is not None
|