Django:无法访问管理面板中的对象
单击AdminPanel中的对象购物车或购物车项目时,我得到:Django:无法访问管理面板中的对象,django,Django,单击AdminPanel中的对象购物车或购物车项目时,我得到: >>> carts = Cart.objects.all() >>> carts Traceback (most recent call last): File "<console>", line 1, in <module> File "D:\virtual_envs\stickers_gallito\lib\site-packages\django\db\mod
>>> carts = Cart.objects.all()
>>> carts
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "D:\virtual_envs\stickers_gallito\lib\site-packages\django\db\models\query.py", line 247, in __repr__
return '<%s %r>' % (self.__class__.__name__, data)
File "D:\virtual_envs\stickers_gallito\lib\site-packages\django\db\models\base.py", line 503, in __repr__
return '<%s: %s>' % (self.__class__.__name__, self)
TypeError: __str__ returned non-string (type int)
模板呈现期间出错
在模板D:\virtual\u envs\stickers\u gallito\lib\site packages\django\contrib\admin\templates\admin\base.html中,第0行出现错误str返回非字符串(int类型) 在shell中查询这些对象时,我得到:
>>> carts = Cart.objects.all()
>>> carts
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "D:\virtual_envs\stickers_gallito\lib\site-packages\django\db\models\query.py", line 247, in __repr__
return '<%s %r>' % (self.__class__.__name__, data)
File "D:\virtual_envs\stickers_gallito\lib\site-packages\django\db\models\base.py", line 503, in __repr__
return '<%s: %s>' % (self.__class__.__name__, self)
TypeError: __str__ returned non-string (type int)
可能有什么问题?例外情况为您提供了有关问题的线索: TypeError:
\uuuu str\uuuu
返回非字符串(typeint
)
您定义了一个\uuuu str\uuu
方法,该方法返回的是整数ID,而不是字符串,因此出现了错误。您需要将值强制为字符串:
def __str__(self):
return str(self.id)
还请注意,
self.id
是数据库中自动生成的行id,与self.cart\u id
不同。如果您使用后者来识别您的购物车,那么您可能希望使用后者。例外情况为您提供了有关问题所在的线索:
TypeError:\uuuu str\uuuu
返回非字符串(typeint
)
您定义了一个\uuuu str\uuu
方法,该方法返回的是整数ID,而不是字符串,因此出现了错误。您需要将值强制为字符串:
def __str__(self):
return str(self.id)
还请注意,
self.id
是数据库中自动生成的行id,与self.cart\u id
不同。如果您使用后者来识别您的购物车,您可能希望使用后者。ty。请参考self.cart\u id
,检查我的另一个问题:ty。请参考self.cart\u id
,检查我的另一个问题: