gpt4 book ai didi

Django 为嵌套外键定义 __str__

转载 作者:行者123 更新时间:2023-12-05 09:17:59 25 4
gpt4 key购买 nike

使用这样的嵌套模型:

class Gov(models.Model):
name = models.CharField(max_length=20)
def __str__(self):
return self.name

class State(models.Model):
parent = models.ForeignKey(Gov)
abbreviation = models.CharField(max_length=100)
def __str__(self):
return self.parent.name

class State_Park(models.Model):
parent = models.ForeignKey(State)
park_name = models.CharField(max_length=100)

如何将类 State_Park__str__ 设置为 class Gov 中的 name

我试过:

def __str__(self):
return self.parent.parent.name

这没有用。

Traceback (most recent call last):
File "<console>", line 1, in <module>
File "C:\Users\ccsv\Envs\wenv\lib\site-packages\django\db\models\query.py", line 229, in __repr__
return '<%s %r>' % (self.__class__.__name__, data)
File "C:\Users\ccsv\Envs\wenv\lib\site-packages\django\db\models\base.py", line 589, in __repr__
u = six.text_type(self)
File "C:\Users\ccsv\Desktop\wenv\mysite\stats\models.py", line 89, in __str__
return self.parent.parent.name()
TypeError: 'str' object is not callable

最佳答案

 File "C:\Users\ccsv\Desktop\wenv\mysite\stats\models.py", line 89, in __str__
return self.parent.parent.name()

根据错误日志,我认为您应该删除行尾的括号。

    def __str__(self):
return self.parent.parent.name

关于Django 为嵌套外键定义 __str__,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46286776/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com