#django #django-rest-framework
#django #django-rest-framework
Вопрос:
как я могу использовать drf для получения api, подобного:
{
"user":{
"username":"my username",
"email":"my email"
},
"product":[
{
"id":id,
"product_name":"somename",
"type":"sometype",
"date_bought":date,
"image": "image address",...
},
{
"id":id,
"product_name":"somename",
"type":"sometype",
"date_bought":date,
"image": "image address",...
},....
]
}
models.py
class Product(models.Model):
product_name=models.CharField(max_length=50)
price = models.IntegerField()
product_type = models.CharField(max_length=25)
description = models.CharField(max_length=250 ,default='', blank=True)
brand = models.CharField(max_length=25, null=True,blank=True)
image = models.ImageField(upload_to='images/product_image')
date_added = models.DateField(auto_now_add=True)
instock = models.BooleanField(default=True)
instock_qty = models.IntegerField()
def __str__(self):
return f"{self.product_name}"
class UserHistory(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE)
product = models.ForeignKey(Product, on_delete=models.RESTRICT)
date_bought = models.DateTimeField(auto_now_add=True)
def __str__(self):
return f'{self.user},{self.product}'
мне нужно быть ble, чтобы выполнить следующее:
- когда ПОЛУЧИТЕ, восстановите вышеуказанные данные.
- добавить продукты (пользователь доступен только для чтения, только аутентифицированный пользователь сможет добавить продукт).
как мне написать сериализатор для достижения вышеуказанных целей
довольно новичок в django, поэтому сообщите мне, если я что-то пропустил
Комментарии:
1. какова цель модели UserHistory
2. он записывает транзакцию между пользователем и продуктом, который они покупают. например, пользователь 1 купил продукт 3 в datetime x.
3. Вы хотите выполнить 1 и 2 в одном запросе GET?
4. № 1 — это get для просмотра истории продуктов аутентифицированного пользователя, а 2 — это сообщение для добавления проданных продуктов в историю