Я создаю веб-приложение, в котором пользователь может продать свой старый телефон на веб-сайте и получить максимальную доступную стоимость телефона.
Этот процесс похож на Cashify. (https://www.cashify.in/sell-old-mobile-phone).
Как только пользователь нажимает на определенную марку, он перечисляет все доступные устройства под этой маркой.
Когда пользователь нажимает на определенное устройство, он переходит к URL-адрес, показывающий различные варианты телефона. Когда пользователь выбирает вариант, максимальная доступная цена устройства, которое он показывает пользователю.
Вот код:
models.py
class Brand(models.Model):
title = models.CharField(max_length=50)
brand_image = models.ImageField()
slug = models.CharField(max_length=50, default='slug')
class Meta:
verbose_name_plural = "Brands"
def __str__(self):
return self.title
class Storage(models.Model):
ram_storage = models.CharField(max_length=2, default=1)
rom_storage = models.CharField(max_length=3, default=2)
class Meta:
verbose_name_plural = "Storages"
def __str__(self):
return (self.ram_storage + "/" + self.rom_storage)
class Mobile(models.Model):
title = models.CharField(max_length=50)
thumbnail = models.ImageField()
slug = models.CharField(max_length=50)
max_selling_price = models.IntegerField(default=10000)
brand = models.ForeignKey(Brand, default="Apple", related_name='brand', verbose_name="Brands", on_delete=models.SET_DEFAULT)
storage = models.ForeignKey(Storage, related_name='storage', default=1, verbose_name="Storage", on_delete=models.CASCADE)
def __str__(self):
return self.title
def get_absolute_url(self):
return reverse('brand-detail', kwargs={
'slug': self.slug
})
views.py
def brand_detail_view(request, slug):
phone = Mobile.objects.filter(brand__slug = slug)
context = {
"phones": phone
}
return render(request, "brand-detail.html", context)
def phone_detail_view(request, slug):
phone = get_object_or_404(Mobile, brand__slug=slug)
context = {
"phone": phone
}
return render(request, "phone-detail.html", context)