python - 如何在 Django 中不使用模型或身份验证来存储用户的购物车信息?
问题描述
我正在制作一个电子商务网站,我使用此视图允许用户在购物车中添加商品:
def add_to_cart(request, slug):
if request.method == 'POST':
item = get_object_or_404(Item, slug=slug)
order_item = OrderedItems.objects.create(item=item, user=request.user, ordered=False)
order_qs = Order.objects.filter(user=request.user, ordered=False)
if order_qs.exists():
order = order_qs[0]
order_item.quantity = request.POST.get('number')
order_item.save()
order.items.add(order_item)
return redirect('core:home')
order = Order.objects.create(user=request.user, ordered=False)
order.items.add(order_item)
order_item.quantity = request.POST.get('number')
order_item.save()
return redirect('core:product_detail', slug=slug)
本网站中的模型和其他所有内容在很大程度上取决于用户身份验证。我跟踪哪个用户通过Order
模型订购了哪些商品:
class OrderedItems(models.Model):
item = models.ForeignKey(
Item, on_delete=models.CASCADE, related_name='ordereditems')
quantity = models.IntegerField(default=1)
user = models.ForeignKey(settings.AUTH_USER_MODEL,
on_delete=models.CASCADE)
ordered = models.BooleanField(default=False)
那么,如何在不使用模型或使用 cookie 或会话进行身份验证的情况下存储用户的购物车信息?请用代码解释一下。
Github 链接到当前项目。
谢谢你
解决方案
推荐阅读
- java - 使用 Antlr4 解析 PlSQL 时如何提取带有语法错误的行
- scala - 如何使用 Scala 反射/镜像调用 Databricks dbutils
- python - 为什么我收到 OSError:[WinError 193] %1 不是有效的 Win32 应用程序
- fabricjs - SVG背景没有在fabricjs中填充画布
- docusignapi - 演示 Docusign Connect 通知“已发送”不起作用
- go - 从 URL 查询参数解码 JSON
- node.js - 在 Express Nodejs 中记录用户活动
- angular - Angular Slickgrid - 基于网格数据加载单选编辑器集合
- java - Java 8 2 个不同列表的比较
- mule - Dataweave 2.0 中的 Excel 到 Json 映射