fix: default option in attributes

This commit is contained in:
2025-11-03 10:43:10 +04:00
parent be878717e5
commit a7bda3d9f6
6 changed files with 24 additions and 21 deletions

View File

@ -8,7 +8,7 @@ from models.base import BaseModel
from models.mixins import IdMixin, SoftDeleteMixin
if TYPE_CHECKING:
from models import Module, Deal, AttributeSelect
from models import Module, Deal, AttributeSelect, AttributeOption
module_attribute = Table(
"module_attribute",
@ -39,7 +39,15 @@ class Attribute(BaseModel, IdMixin, SoftDeleteMixin):
comment="Применять ли изменения атрибута карточки ко всем карточкам в группе",
)
is_nullable: Mapped[bool] = mapped_column(default=False)
default_value: Mapped[Optional[dict[str, any]]] = mapped_column(JSONB)
default_option_id: Mapped[Optional[int]] = mapped_column(
ForeignKey("attribute_options.id")
)
default_option: Mapped[Optional["AttributeOption"]] = relationship(
backref="attributes", lazy="joined"
)
description: Mapped[str] = mapped_column(default="")
is_built_in: Mapped[bool] = mapped_column(default=False)