Make last_name optional and add default for first_name.

Updated the schemas and models to make `last_name` optional and set a default value of "user" for `first_name`. This change enhances flexibility for user data handling and ensures proper defaults when values are not provided.
This commit is contained in:
2025-03-04 18:53:49 +01:00
parent 7d9f4ee4b2
commit 67f1dfbd9d
3 changed files with 4 additions and 4 deletions

View File

@@ -35,7 +35,7 @@ def upgrade() -> None:
sa.Column('email', sa.String(), nullable=False),
sa.Column('password_hash', sa.String(), nullable=False),
sa.Column('first_name', sa.String(), nullable=False),
sa.Column('last_name', sa.String(), nullable=False),
sa.Column('last_name', sa.String(), nullable=True),
sa.Column('phone_number', sa.String(), nullable=True),
sa.Column('is_active', sa.Boolean(), nullable=False),
sa.Column('is_superuser', sa.Boolean(), nullable=False),

View File

@@ -8,8 +8,8 @@ class User(Base, UUIDMixin, TimestampMixin):
email = Column(String, unique=True, nullable=False, index=True)
password_hash = Column(String, nullable=False)
first_name = Column(String, nullable=False)
last_name = Column(String, nullable=False)
first_name = Column(String, nullable=False, default="user")
last_name = Column(String, nullable=True)
phone_number = Column(String)
is_active = Column(Boolean, default=True, nullable=False)
is_superuser = Column(Boolean, default=False, nullable=False)

View File

@@ -10,7 +10,7 @@ from pydantic import BaseModel, EmailStr, field_validator, ConfigDict
class UserBase(BaseModel):
email: EmailStr
first_name: str
last_name: str
last_name: Optional[str] = None
phone_number: Optional[str] = None
@field_validator('phone_number')