AttributeError:“tuple”对象没有属性“profilePic”

2024-10-02 00:24:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我的models.py中有以下内容

profilePic = models.OneToOneField(Document, default=None, null=True, blank=True, on_delete=models.CASCADE)

在我看来,是的

loggedinanon = Anon.objects.get_or_create(username1=loggedinuser)

newdoc = Document(docfile = request.FILES['docfile'])
                newdoc.save()
                loggedinanon.profilePic = newdoc

我不知道应该使用什么代码才能将文档保存为anon的一部分


Tags: pynonetruedefaultonmodelsdeletedocument
2条回答

将代码更改为

loggedinanon, created = Anon.objects.get_or_create(username1=loggedinuser)

因为get_或_create返回(instance,created)的元组

获取或创建函数,返回元组:(对象,创建) -对象是Anon.objects.get_或_create(username1=loggedinuser)的实例 -create是布尔值(如果对象已创建,则为true;如果对象已获取,则为false)

因此,您可以尝试:

loggedinanon, creation= Anon.objects.get_or_create(username1=loggedinuser)
newdoc = Document(docfile = request.FILES['docfile'])
newdoc.save()
loggedinanon.profilePic = newdoc    

我对最后一行有疑问: loggedinanon.profilePic=newdoc

我认为你应该有更多类似的东西:

objectName=ClassName.update(userName=loggedinanon,默认值={'profilePic':newdoc})

取决于模型的关系。Django教程很长,但确实需要阅读 https://docs.djangoproject.com/en/3.0/ref/models/querysets/

相关问题 更多 >

    热门问题