python采用unicode,python字符比较是用unicode进行的吗-

  python采用unicode,python字符比较是用unicode进行的吗?

  谢谢你的邀请。

  其实楼上@InjetLee说的基本到位。这是Django特有的。无论这个__unicode__(python3是__str__)方法是否在模型中定义,最直接的感受就是你访问admin时看到的东西是否友好。

  接下来举个栗子:

  课堂提问(模型。型号):

  question_text=models。CharField(问题文本,max_length=200)

  pub_date=模型。DateTimeField(“发布日期”)

  类别元:

  verbose_name=question

  详细名称复数=详细名称

  ordering=[-id]

  def __str__(self):

  返回self.question_text

  以上模型来自django的官方教程。在上面的模型中,我定义了一个名为Question的模型。这时我访问了django的后台admin,看到了以下内容。

  可以发现,Question看到的是我们上面返回的self.question_text(如果返回其他数据,会看到不同的结果)。那么,如果此时将上面的代码注释掉,会发生什么,也就是变成如下这样?

  课堂提问(模型。型号):

  question_text=models。CharField(问题文本,max_length=200)

  pub_date=模型。DateTimeField(“发布日期”)

  类别元:

  verbose_name=question

  详细名称复数=详细名称

  ordering=[-id]

  #

  # def __str__(self):

  #返回self.question_text

  此时,去后台管理查看问题,变成这样:

  你定义的问题和你看到的内容都变成了问题宾语。这种表达对人相当不友好。

  所以,以上就是我对__unicode__作用的理解。希望对你有帮助。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: