我的模型中有一个OneToOneField字段:
class Portfolio(models.Model):
user = models.OneToOneField(settings.AUTH_USER_MODEL, primary_key=True, on_delete=models.CASCADE)
在视图中的其他地方,我正试图从Portfolio
User
portfolio = request.user.portfolio
我的调试器显示结果:<class 'tuple'>: (<Portfolio: 9999999>,)
为什么这样做?难道不是1比1会返回一个对象吗?
答案 0 :(得分:1)
我刚刚遇到了同样的错误。正如丹尼尔所说,在我的模型中,这是一个落后的逗号:
class Book(models.Model):
name = models.CharField(max_length=128, verbose_name='Name')
author = models.OneToOneField('Author'), # <----- this comma was the cause of all evil