Django --魔法方法:def __str__()
Posted gengyufei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django --魔法方法:def __str__()相关的知识,希望对你有一定的参考价值。
- __str__是python的object基类的一个方法,也就是说python所有的类都有;
- 当然django的modle类也有;
- 我们平常创建一个类的对象,print这个对象时一般会是<__main_.TestClass object at 0x7f4126578828>,即这个对象的所属类和内存地址;
- 我们改写类中的__str__方法后可以在print时得到想要的易于人阅读的对象的信息,以下是实例
# 一般情况 class TestClass: def __init__(self): self.name = ‘testcase‘ t = TestClass() print(t) # 得到<__main__.TestClass object at 0x7f8c49b21828>
# 改写__str__方法 class TestClass: def __init__(self): self.name = ‘testcase‘ def __str__(self): return self.name t = TestClass() print(t) # 得到testcase
以上是关于Django --魔法方法:def __str__()的主要内容,如果未能解决你的问题,请参考以下文章
/writeReview/1 __str__ 处的 Django 模型 TypeError 返回非字符串(int 类型)
迁移后在 Django 上更改 db_table 不起作用,并且添加用户 (AbstractUser) 外键会破坏 __str__()
django-AttributeError: 'str' object has no attribute 'decode'