model.py
class Review(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE)
product = models.ForeignKey(Product,on_delete=models.CASCADE)
review = models.CharField(max_length=500)
date_reviewed = models.DateTimeField(auto_now_add=True)
views.py
def review(request):
if request.method=="POST":
if request.user.is_authenticated:
sender = request.user
review=request.POST['review']
pid = request.POST['pid']
product=Product.objects.get(id=pid)
rev = Review(user=sender,product=product,review=review)
rev.save()
reviews = Review.objects.filter(product=pid).values()
da=list(reviews)
print(da)
return JsonResponse({'reviews':da})
预期产出:
[{'id': 6, 'user_name': sandeep, 'product_id': 2, 'review': 'lknkk',
'date_reviewed': datetime.datetime(2021, 5, 1, 13, 2, 12, 404779, tzinfo=<UTC>)}]
我正在尝试使用jsonresponse将此数据发送到我的前端,以创建产品审查表,但在输出中,我得到的是用户id而不是用户名。是否有方法传递用户名?
以下是实际产出:
[{'id': 6, 'user_id': 2, 'product_id': 2, 'review': 'lknkk',
'date_reviewed': datetime.datetime(2021, 5, 1, 13, 2, 12, 404779, tzinfo=<UTC>)}]
例如,通过修改查询来显式添加用户->;用户名:
如果要设置别名,请使用F():
请注意“user\uu name”中的双下划线,以访问相关模型中的字段
相关问题 更多 >
编程相关推荐