Django---图书管理系统,一对多(外键设置),__str__和__repr__的区别,进阶版项目说明简介.模版语言if ... else ..endif

时间:2022-05-29 15:11:37

Django---图书管理系统,一对多(外键设置),__str__和__repr__的区别,进阶版项目说明简介.模版语言if ... else ..endif

一丶__str____repr__

class Publish(models.Model):
pname = models.CharField(max_length=32, unique=True)
paddr = models.CharField(max_length=32) # 这是调用 __str__ 方法打印的结果, __str__是让程序员看的
# 打印'对象'时,先找__str__方法,如果没有__str__方法,才找__repr__方法,在没有就去父类去找
def __str__(self):
return f'{self.pname}***{self.paddr}' #这是调用 __repr__ 方法打印的结果, __repr__是让程序看的
#打印python默认数据类型时,直接调用的是__repr__方法
# 内置数据对象,直接调用 __repr__方法
def __repr__(self):
return f'{self.pname}--{self.paddr}' # 让__repr__ 和 __str__相等 ,一般来说使用str就足够了
__repr__=__str__

区别图如下