Django/Python - 用文字而不是数字显示月份
Posted
技术标签:
【中文标题】Django/Python - 用文字而不是数字显示月份【英文标题】:Django/Python - showing months in words instead of numbers 【发布时间】:2013-02-28 23:42:27 【问题描述】:我在用文字而不是数字显示月份时遇到了一点问题。 对,我的博客显示“13-03-2013”,但我希望它是“2013 年 3 月 13 日”
以下是我现在所做的事情: 我在模型中添加了日期:
pub_date = models.DateTimeField("Gepubliceerd", auto_now_add=True)
当我在博客模板中调用变量 pub_date 时,它以数字显示 (13-03-2013)。
有没有一种简单的方法可以将数字更改为实际月份名称? 我一直在考虑创建一个包含每个月份名称的元组,让它运行检查 pub_date 中的月份数,并据此使用元组中的正确月份。
但出于某种原因,我觉得必须有一个更简单的方法。但到目前为止,我还没有成功找到另一个解决方案。
希望一些很棒的人对此有经验!
提前谢谢!
【问题讨论】:
看到这个docs.python.org/2/library/…和这个docs.djangoproject.com/en/dev/ref/settings/#date-format ***.com/questions/7737146/django-template-date-format的可能重复 格式化日期值。 【参考方案1】:您应该使用 Django 提供的模板过滤器date
。请参阅documentation 了解如何使用它。
如果您想在这个地方使用这种日期格式,只需使用
pub_date|date:'d-F-Y'
如果这是您希望随处使用的默认格式,请使用 DATE_FORMAT
和 SHORT_DATE_FORMAT
设置。阅读文档了解更多信息。
【讨论】:
谢谢!对于一些人来说,我之前所做的研究失败了。我可以将 pub_date|date:'d-m-Y' 更改为 pub_date|date:'d-M-Y' 。大写的 M 使它显示单词而不是数字!无论如何,谢谢所有的帮助! ^^【参考方案2】:所以在这篇文章之后进行了更多研究(我应该在提出这个问题之前完成)我得出以下结论:
pub_date|date:'d-m-Y'
是我如何称呼日期。在其中,您可以使用 Django 本身提供的日期格式。如果将“m”更改为大写“M”,它将以字母显示月份。但是这里解释了更多的可能性:
Read here all about the Django date format
再次抱歉,这么快就提问了
【讨论】:
以上是关于Django/Python - 用文字而不是数字显示月份的主要内容,如果未能解决你的问题,请参考以下文章
c#实现自然排序效果,按1,2,11而不是1,11,12,区分字母文字和数字
在winform中,如何将DataGridView中某几列的数值设置成文字,及显示文字,后台传递的是数字。