Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions wacruit/src/apps/history/schemas.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
from pydantic import BaseModel

from wacruit.src.apps.common.schemas import OrmModel


class UpdateHistoryRequest(BaseModel):
class Config:
extra = "allow"


class HistoryResponse(BaseModel):
__root__: dict[str, str]
class HistoryResponse(OrmModel):
id: int
history_key: str
history_value: str
15 changes: 6 additions & 9 deletions wacruit/src/apps/history/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,16 @@ def update_history(
history_service: Annotated[HistoryService, Depends()],
update_request: UpdateHistoryRequest,
):
updated_history = history_service.update_history(update_request)
response_dict = {}
for h in updated_history:
response_dict[h.history_key] = h.history_value
updated_history_list = history_service.update_history(update_request)

return HistoryResponse(__root__=response_dict)
return [
HistoryResponse.from_orm(updated_history)
for updated_history in updated_history_list
]


@v3_router.get("")
def get_history(history_service: Annotated[HistoryService, Depends()]):
history_list = history_service.get_history()
response_dict = {}
for h in history_list:
response_dict[h.history_key] = h.history_value

return HistoryResponse(__root__=response_dict)
return [HistoryResponse.from_orm(history) for history in history_list]
6 changes: 4 additions & 2 deletions wacruit/src/apps/project/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,9 @@
from wacruit.src.database.base import intpk
from wacruit.src.database.base import str30
from wacruit.src.database.base import str50
from wacruit.src.database.base import str100
from wacruit.src.database.base import str255
from wacruit.src.database.base import str1500

if TYPE_CHECKING:
from wacruit.src.apps.member.models import Member
Expand All @@ -24,8 +26,8 @@ class Project(DeclarativeBase):

id: Mapped[intpk]
name: Mapped[str30]
summary: Mapped[str50 | None]
introduction: Mapped[str255 | None]
summary: Mapped[str100 | None]
introduction: Mapped[str1500 | None]
thumbnail_url: Mapped[str255 | None]
project_type: Mapped[ProjectType]
is_active: Mapped[bool] = mapped_column(default=True)
Expand Down
3 changes: 2 additions & 1 deletion wacruit/src/apps/review/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
from wacruit.src.database.base import intpk
from wacruit.src.database.base import str30
from wacruit.src.database.base import str255
from wacruit.src.database.base import str1500

if TYPE_CHECKING:
from wacruit.src.apps.member.models import Member
Expand All @@ -19,7 +20,7 @@ class Review(DeclarativeBase):

id: Mapped[intpk]
title: Mapped[str30]
content: Mapped[str255]
content: Mapped[str1500]
member_id: Mapped[int] = mapped_column(ForeignKey("member.id"))

member: Mapped["Member"] = relationship(back_populates="review")
2 changes: 2 additions & 0 deletions wacruit/src/database/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,6 @@
intpk = Annotated[int, mapped_column(primary_key=True, autoincrement=True)]
str30 = Annotated[str, mapped_column(String(30))]
str50 = Annotated[str, mapped_column(String(50))]
str100 = Annotated[str, mapped_column(String(100))]
str255 = Annotated[str, mapped_column(String(255))]
str1500 = Annotated[str, mapped_column(String(1500))]
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
"""fix project introduction length

Revision ID: b306477282a1
Revises: 599c54cee280
Create Date: 2025-07-21 18:04:36.099890

"""
from alembic import op
import sqlalchemy as sa
from sqlalchemy.dialects import mysql

# revision identifiers, used by Alembic.
revision = "b306477282a1"
down_revision = "599c54cee280"
branch_labels = None
depends_on = None


def upgrade() -> None:
# ### commands auto generated by Alembic - please adjust! ###
op.alter_column(
"project",
"summary",
existing_type=mysql.VARCHAR(length=50),
type_=sa.String(length=100),
existing_nullable=True,
)
op.alter_column(
"project",
"introduction",
existing_type=mysql.VARCHAR(length=255),
type_=sa.String(length=1500),
existing_nullable=True,
)
op.alter_column(
"review",
"content",
existing_type=mysql.VARCHAR(length=255),
type_=sa.String(length=1500),
existing_nullable=False,
)
# ### end Alembic commands ###


def downgrade() -> None:
# ### commands auto generated by Alembic - please adjust! ###
op.alter_column(
"review",
"content",
existing_type=sa.String(length=1500),
type_=mysql.VARCHAR(length=255),
existing_nullable=False,
)
op.alter_column(
"project",
"introduction",
existing_type=sa.String(length=1500),
type_=mysql.VARCHAR(length=255),
existing_nullable=True,
)
op.alter_column(
"project",
"summary",
existing_type=sa.String(length=100),
type_=mysql.VARCHAR(length=50),
existing_nullable=True,
)
# ### end Alembic commands ###