Я новичок в python и кодировании, и мне было интересно, есть ли у меня какие-нибудь указатели для меня. Я делаю сайт электронной коммерции с использованием Django, и я хотел бы позволить пользователю легко сортировать все продукты с высокого на низкое, низкое на высокое, новые и т. Д.
Я бы хотел, чтобы поле выглядело примерно так:
Я создал фильтры на своем веб-сайте, которые фильтруют по цвету, типу продукта и размеру.
my models.py выглядит так:
class e_info(models.Model):
product = models.CharField(max_length=120)
description = models.TextField(default="desctription default text")
price = models.IntegerField(default=0)
product_group = models.ForeignKey(ProductGroup, on_delete=models.SET_NULL, null=True)
#sub_product_group = models.ForeignKey(SubProductGroup, on_delete=models.CASCADE)
size = models.ForeignKey(Size, on_delete=models.SET_NULL, null=True)
color = models.ForeignKey(Color, on_delete=models.SET_NULL, null=True)
image = models.FileField(upload_to= 'post_image', blank=True)
image_1 = models.FileField(upload_to='post_image', blank=True)
image_2 = models.FileField(upload_to='post_image', blank=True)
image_3 = models.FileField(upload_to='post_image', blank=True)
image_4 = models.FileField(upload_to='post_image', blank=True)
date_added = models.DateTimeField(auto_now_add=True)
class Meta:
verbose_name_plural= 'e_info'
def __str__(self):
return self.product[:50]
Мои взгляды выглядят так:
def about(request):
about = e_info.objects.all()
product = ProductGroup.objects.all()
color = Color.objects.all()
info_search = e_info.objects.all().order_by('-price')
info_filter = ColorFilter(request.GET, queryset=info_search)
context = {
'about': about,
'color': color,
'product': product,
'info_filter': info_filter,
}
template = 'about.html'
return render(request, template, context)
Я хочу отсортировать информацию в модели e_info. Любая помощь будет принята с благодарностью. Спасибо!