id-py/app/user/model.py
2021-02-25 01:39:14 +06:00

29 lines
836 B
Python

import enum
from datetime import datetime
from sqlalchemy import Column, String, Integer, DateTime, Enum, Date
from app.db import EntityBase
class Sex(enum.Enum):
"""Human sex according to ISO/IEC 5218."""
NOT_KNOWN = 0,
MALE = 1,
FEMALE = 2,
NOT_APPLICABLE = 9
class User(EntityBase):
__tablename__ = "users"
id = Column(Integer, primary_key=True)
username = Column(String(length=32), unique=True, nullable=False)
email = Column(String, unique=True, nullable=False)
password = Column(String, nullable=False)
given_name = Column(String(length=32), nullable=False)
family_name = Column(String(length=32))
sex = Column(Enum(Sex), nullable=False, default=Sex.NOT_KNOWN)
birthdate = Column(Date)
creation_date = Column(DateTime, nullable=False, default=datetime.utcnow())