Models

shopkit.variations.models

class shopkit.variations.models.OrderedProductVariationBase(*args, **kwargs)

Bases: shopkit.variations.models.ProductVariationBase, shopkit.core.basemodels.OrderedInlineItemBase

Base class for ordered product variations.

classmethod get_default_variation()

By default, this returns the first variation according to the default sortorder.

Related objects for generating default ordering.

class shopkit.variations.models.ProductVariationBase(*args, **kwargs)

Bases: django.db.models.base.Model

Base class for variations of a product.

classmethod get_default_variation()

Return the default variation selected for this product. As there is no inherent way to order these, this function should be overridden in classes actually implementing the variation model.

This might, for example, be overriden by taking the first product in the list or by some function selecting a specific variation as default.

class shopkit.variations.models.VariationCartItemMixin(*args, **kwargs)

Bases: django.db.models.base.Model, shopkit.variations.models.VariationItemBase

Mixin class for cart items which can have variations.

class shopkit.variations.models.VariationItemBase

Bases: object

Abstract base class for (order/cart) items with variations.

class shopkit.variations.models.VariationOrderItemMixin(*args, **kwargs)

Bases: django.db.models.base.Model, shopkit.variations.models.VariationItemBase

Mixin class for order items which can have variations.

classmethod from_cartitem(cartitem, order)

Create OrderItem from CartItem.