models.py
unknown
python
a year ago
2.5 kB
4
Indexable
from sqlalchemy import Column, Integer, String, Boolean, Text, ForeignKey, JSON, Time, DECIMAL from sqlalchemy.orm import relationship from .database import Base # Existing Models... class Variant(Base): __tablename__ = 'variants' id = Column(Integer, primary_key=True, index=True) productId = Column(Integer, ForeignKey('products.id')) titleEn = Column(String) titleAr = Column(String) selIndex = Column(Integer) subtitleEn = Column(String) subtitleAr = Column(String) product = relationship("Product", back_populates="variants") options = relationship("VariantOption", back_populates="variant") class VariantOption(Base): __tablename__ = 'variant_options' id = Column(Integer, primary_key=True, index=True) variantId = Column(Integer, ForeignKey('variants.id')) titleEn = Column(String) titleAr = Column(String) isSelected = Column(Boolean) variant = relationship("Variant", back_populates="options") # Update the Product model to include variants class Product(Base): __tablename__ = 'products' id = Column(Integer, primary_key=True, index=True) titleEn = Column(String) titleAr = Column(String) descriptionEn = Column(Text) descriptionAr = Column(Text) customizable = Column(Boolean) sequenceOrder = Column(Integer) price = Column(DECIMAL) specialPrice = Column(DECIMAL) strikeOutPrice = Column(DECIMAL) discountPrecentage = Column(Integer) selectedItemId = Column(Integer) type = Column(String) displayDateConfig = Column(JSON) selectedValue = Column(Integer) itemType = Column(String) limited_offer = Column(Boolean) spicyOutConfig = Column(String) taxClassId = Column(Integer) lucky_day = Column(String) lucky_date_everymonth = Column(String) last_weak_everymonth = Column(String) lucky_type = Column(String) status = Column(Boolean) qrcode = Column(Text) categories = relationship("CategoryProduct", back_populates="product") services = relationship("Service", back_populates="product") display_times = relationship("DisplayTimeRange", back_populates="product") steps = relationship("Step", back_populates="product") variants = relationship("Variant", back_populates="product") # New relationship products = relationship("Product", backref="parent_product") # Relationship for sub-products
Editor is loading...
Leave a Comment