【发布时间】:2012-12-07 11:33:42
【问题描述】:
我有一个 Django 模型:
class Project(models.Model):
user = models.ForeignKey(User)
zipcode = models.CharField(max_length=5)
module = models.ForeignKey(Module)
在我看来.py:
def my_view(request):
...
project = Project.objects.create(
user=request.user,
product=product_instance,
...
)
project.save()
我希望能够将用户保存为经过身份验证的用户或 AnonymousUser(我可以稍后更新)。但是,如果我没有登录,我会收到此错误:
ValueError: Cannot assign "<django.utils.functional.SimpleLazyObject object at 0x1b498d0>": "Project.user" must be a "User" instance.
我猜 Django 不会保存 AnonymousUser,因为它不是 User 模型中定义的用户。我是否需要将匿名用户添加到 User 模型中,还是我遗漏了什么?
非常感谢任何帮助。
【问题讨论】:
标签: django django-models django-views django-authentication