Код: Выделить всё
def get_product(request, slug):
try:
product = Product.objects.get(slug=slug)
if request.GET.get('size'):
size = request.GET.get('size')
print(size)
return render(request, "core/product_detail.html")
except Exception as e:
print(e)
Код: Выделить всё
function get_correct_price(size) {
console.log(size);
window.location.href = window.location.pathname + `?size=${size}`;
}
Код: Выделить всё
{{ s.name }}
Не могли бы вы помочь мне определить, почему параметр размера не принимается в бэкэнд? Любые идеи или предложения будут с благодарностью приняты. Спасибо!
urls.py:
Код: Выделить всё
path("products/",product_list_view,name="product_list"),
path("product//",product_detail_view,name="product_detail"),
path("product//",get_product,name="product_detail"),
Код: Выделить всё
class Size(models.Model):
name=models.CharField(max_length=100)
code= models.CharField(max_length=50,blank=True,null=True)
price = models.DecimalField(max_digits=10, decimal_places=2, blank=True, null=True)
def __str__(self):
return self.name
class Product(models.Model):
pid=ShortUUIDField(length=10,max_length=100,prefix="prd",alphabet="abcdef")
user=models.ForeignKey(CustomUser, on_delete=models.SET_NULL ,null=True)
cagtegory=models.ForeignKey(Category, on_delete=models.SET_NULL ,null=True,related_name="category")
vendor=models.ForeignKey(Vendor, on_delete=models.SET_NULL,null=True,related_name="product")
color=models.ManyToManyField(Color,blank=True)
size=models.ManyToManyField(Size,blank=True)
title=models.CharField(max_length=100,default="Apple")
image=models.ImageField(upload_to=user_directory_path,default="product.jpg")
description=RichTextUploadingField(null=True, blank=True,default="This is a product")
price = models.DecimalField(max_digits=10, decimal_places=2, default=1.99)
old_price = models.DecimalField(max_digits=10, decimal_places=2, default=2.99)
specifications=RichTextUploadingField(null=True, blank=True)
tags=TaggableManager(blank=True)
product_status=models.CharField(choices=STATUS, max_length=10,default="In_review")
status=models.BooleanField(default=True)
in_stock=models.BooleanField(default=True)
featured=models.BooleanField(default=False)
digital=models.BooleanField(default=False)
sku=ShortUUIDField(length=10,max_length=100,prefix="sku",alphabet="abcdef")
date=models.DateTimeField(auto_now_add=True)
updated=models.DateTimeField(null=True,blank=True)
class Meta:
verbose_name_plural="Products"
def product_image(self):
return mark_safe('
[img]%s[/img]
'%(self.image.url))
def __str__(self):
return self.title
def get_percentage(self):
new_price=((self.old_price-self.price)/self.old_price)*100
return new_price
Я просто хочу, чтобы http://127.0.0.1:8000/product/prdeeffea ... ize=15inch из URL-адреса, который он должен напечатать 15 дюймов это
Подробнее здесь: https://stackoverflow.com/questions/782 ... go-backend