【问题标题】:What is the meaning of string argument in django model's Field?django模型的字段中字符串参数的含义是什么?
【发布时间】:2015-01-20 12:42:25
【问题描述】:

刚刚学习 django,我正在阅读 this tutorial 并且对此部分感到困惑:

class Question(models.Model):

    pub_date = models.DateTimeField('date published')

搜索其文档后,仍然无法弄清楚'date published' 参数的含义是什么?谁能解释一下?

【问题讨论】:

    标签: python django django-models models


    【解决方案1】:

    从您链接到的那个确切的教程页面,大约三个段落:

    您可以使用字段的可选第一个位置参数来指定人类可读的名称。这在 Django 的几个内省部分中使用,它兼作文档。

    【讨论】:

      【解决方案2】:

      这里是一个人类可读名称含义的示例。

      class Question(models.Model):
          question_text = models.CharField(max_length=200)
          pub_date = models.DateTimeField('Enter published date')
      

      所以在我们的管理面板中,我们看到我们的 pub_date 字段名称为 输入发布日期

      但如果您尝试从数据库中获取数据,您会看到字段名称为 pub_date

      >>> data_dict = Question.objects.all().values()
      >>> data_dict
      [{'question_text': u'What is Python?', 'pub_date': datetime.datetime(2014, 11, 22, 12, 23, 42, tzinfo=<UTC>), u'id': 1}]
      

      【讨论】:

      • 我明白了,所以字符串参数在视图中用作标签字符串。
      【解决方案3】:

      由于在文档中很难找到此功能,我认为最好明确使用 verbose_name 参数,例如

      class Question(models.Model):
          pub_date = models.DateTimeField(verbose_name='date published')
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-04-13
        • 1970-01-01
        • 1970-01-01
        • 2016-11-30
        • 2012-10-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多