M
Size: a a a
M
M
А
AK
object.m2m_objects.all()
А
object.m2m_objects.all()
А
AK
BM
AK
DO
class CampaignSerializer(serializers.ModelSerializer):
app = AppSerializer(required=False)
class Meta:
model = Campaign
fields = (
'id',
'shop',
'app',
'campaign_active',
'cookie_expiration',
'schedule_type',
'schedule_start_date',
'schedule_end_date',
'url_filters',
'email_segmentations',
'app_type',
'triggers',
'displayed',
'emails_collected',
'rejected_after_spin',
'allow_duplicate_emails',
'auto_inject_coupon',
)
А
Модели
class Product(models.Model):
name = models.CharField(max_length=56)
price = models.DecimalField(max_digits=6, decimal_places=3, blank=True, null=True)
descriptions = models.TextField(max_length=256)
raiting = models.DecimalField(max_digits=3, decimal_places=1, blank=True, null=True)
views = models.IntegerField(default=0)
class Basket(models.Model):
user = models.OneToOneField('auth.User', on_delete=models.CASCADE)
class ProductInBasket(models.Model):
bascket = models.ForeignKey(Basket, on_delete=models.CASCADE)
product = models.ForeignKey(Product, on_delete=models.CASCADE)
count = models.IntegerField(default=1)
class Order(models.Model):
bascket = models.ForeignKey(Basket, on_delete=models.CASCADE)
product = models.ManyToManyField('Product', blank=True, null=True)
вьюшка
def order(request,basket_pk):
basket = get_object_or_404(Basket, pk=basket_pk)
product_in_basket = ProductInBasket.objects.filter(bascket=basket)
order = Order.objects.create(bascket=basket)
order.save()
products = product_in_basket.all()
product = get_object_or_404(Product, pk=products[0].product.pk)
order.product.add(product)
total_price = order.bascket.total_price
# import pdb; pdb.set_trace()
return render(request, 'product/order.html', {'list_order': order.product, 'total_price': total_price})
BM
А
А
BM
А
А
А
object.m2m_objects.all()
А