Add User model

This commit is contained in:
Backend IM Bot 2025-03-27 21:49:33 +00:00
parent abd8e96d82
commit 4852ff3f12

View File

@ -1,17 +1,23 @@
from sqlalchemy import Column, String, Boolean, DateTime from sqlalchemy import Column, String, Integer, Boolean, DateTime, ForeignKey
from sqlalchemy.orm import relationship
from sqlalchemy.sql import func from sqlalchemy.sql import func
from core.database import Base from core.database import Base
import uuid import uuid
from datetime import datetime
class User(Base): class User(Base):
__tablename__ = "users" __tablename__ = "users"
id = Column(String, primary_key=True, default=lambda: str(uuid.uuid4())) id = Column(String, primary_key=True, default=lambda: str(uuid.uuid4()))
name = Column(String, nullable=False) username = Column(String, unique=True, nullable=False, index=True)
address = Column(String, nullable=False) email = Column(String, unique=True, nullable=False)
phone = Column(String, nullable=True) password = Column(String, nullable=False)
email = Column(String, unique=True, nullable=False, index=True) first_name = Column(String, nullable=True)
last_name = Column(String, nullable=True)
bio = Column(String, nullable=True)
profile_picture = Column(String, nullable=True)
relationship_status = Column(String, nullable=True)
interests = Column(String, nullable=True)
is_active = Column(Boolean, default=True) is_active = Column(Boolean, default=True)
last_login = Column(DateTime, nullable=True)
created_at = Column(DateTime, default=func.now()) created_at = Column(DateTime, default=func.now())
updated_at = Column(DateTime, default=func.now(), onupdate=func.now()) updated_at = Column(DateTime, default=func.now(), onupdate=func.now())