首页 > 解决方案 > 如何在 Python/Django 中使用埃塞俄比亚日历创建自定义日期字段

问题描述

我正在构建一个 Django 应用程序,我需要在其中存储日期信息,但我正在使用埃塞俄比亚数据,Python/Django 中的默认日期时间/日历是公历。

有没有办法可以创建与埃塞俄比亚日历匹配的自定义日期时间对象,并将其配置为默认日期时间对象?

标签: pythondjangocalendar

解决方案


我对埃塞俄比亚日历几乎一无所知,但也许我可以提供一些起点和想法。

您可能应该在datetime内部使用基于 gregorian 的对象,并在显示之前或接收用户输入之后从埃塞俄比亚日历转换为埃塞俄比亚日历。这是假设埃塞俄比亚历中的所有日期都可以用公历表示,反之亦然。

你也许可以像这样使用 PyPI 的包:ethiopian-date-converter

如果您确实需要在代码内部使用埃塞俄比亚日期,您可能需要滚动自己的类似日期时间的对象、ModelField、FormField 等。在数据库中存储埃塞俄比亚日期可能也是一项冒险的任务。这可能不值得,这取决于您要解决的任务。

如果您可以在内部(在数据库中、在您的算法等中)使用公历日期,您可能只需要为输出构建一个模板过滤器和一个用于输入的自定义字段

我希望这会让你开始。


推荐阅读