我在我的数据库中有3个表,分别是
我的
目前,我正在进行以下步骤...
1) 通过
2) 从列表中获取用户对象
User
、Flower
和Cart
。我正在为用户创建一个购物车体验,其中用户登录后可以获得一个购物车,可以向其添加物品,然后从购物车中订购物品。我的
Cart
有一个ManyToManyField(Flower)
,而我的User
有一个OneToOneField(Cart)
。当用户将物品添加到购物车时,我需要为他们创建一个购物车,然后存储他们的用户ID和他们点击以添加到购物车的花卉ID(或名称)。目前,我正在进行以下步骤...
1) 通过
p1 = User.objects.filter(username = 'erik')
从数据库中获取用户2) 从列表中获取用户对象
p1 = [0]
3) c1 = Cart(id = 1)
4) c1.user.add(p1)
我遇到了以下错误:RelatedObjectDoesNotExist: Cart has no user.
为什么这不起作用,我该如何让它做我需要它做的事情?
我的模型...
from __future__ import unicode_literals
from django.contrib.auth.models import User
from django.db import models
class Flower(models.Model):
name = models.CharField(max_length=255)
link = models.CharField(max_length=255)
created_at = models.DateField(auto_now_add=True)
def __str__(self):
return self.name
class Meta:
db_table = 'Flower'
class Cart(models.Model):
userid = models.CharField(max_length=255)
flowername = models.CharField(max_length=255)
user = models.OneToOneField(User)
flower = models.ManyToManyField(Flower)
def __str__(self):
应该在 Flower() 的作用域内。class Meta:
也是如此。 - Dirty Penguin