Python Django模型将日期字段的格式更改为;“DD-MM-YYY”;
我正在django项目中使用django模型的-dateField,希望在管理视图中更改我的dateFields格式 目前(默认)django提供的格式为YYYY-MM-DD,但我想修改该格式,需要DD-MM-YYYY 我在这件事上挣扎了太多,直到没有解决办法 同时提供我的代码,可能会有所帮助 my设置.py具有:Python Django模型将日期字段的格式更改为;“DD-MM-YYY”;,python,django,django-models,django-admin,date-format,Python,Django,Django Models,Django Admin,Date Format,我正在django项目中使用django模型的-dateField,希望在管理视图中更改我的dateFields格式 目前(默认)django提供的格式为YYYY-MM-DD,但我想修改该格式,需要DD-MM-YYYY 我在这件事上挣扎了太多,直到没有解决办法 同时提供我的代码,可能会有所帮助 my设置.py具有: LANGUAGE_CODE = 'en-us' TIME_ZONE = 'UTC' USE_I18N = True USE_L10N = True USE_TZ = True 型号
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True
型号.py:
class UserProfile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='User_Profile')
mobile = models.BigIntegerField()
alternative_number = models.BigIntegerField()
DOB = models.DateField()
然后我在admin中注册它
关于管理
正如您在我的管理页面中看到的,有一个日期字段,格式为2019-11-04,但我希望格式为DD-MM-YYYY,格式为04-11-2019
我尝试了LANGUAGE\u CODE='de at'这对我来说很有用,但问题是,它也改变了本地语言
参考一篇类似的帖子:
将此添加到您的设置中。py
DATE_FORMAT = '%d-%m-%y'
要了解更多信息,请检查此项您只需覆盖Django的默认语言环境设置。将其添加到settings.py文件中
from django.conf.locale.es import formats as es_formats
es_formats.DATETIME_FORMAT = "d M Y H:i:s"
fahim kazi是对的:要定义models.DateField格式,需要的是DATE_格式,而不是DATETIME_格式 然而Naveen Varshney也是对的:DATE_格式和DATETIME_格式在没有指定语言的情况下工作,例如es_格式 因此,从两个答案的组合中,将以下内容放入设置中:
es_formats.DATE_FORMAT = 'd-m-y'
(同样'%d-%m-%y'
打印%01-%08-%20
,因此不需要%
)
谢谢。你对这个问题的答案中的链接有何看法:Hi@TamoorSalah-U-Din,这些是forms.datefield的链接,我尝试了我的链接,但没有解决问题。这对我的案例不起作用。请详细说明django.conf.locals包是什么。es是语言代码或什么的es。。在我的情况下,我的语言_CODE=“en-us”是否与此相关。
es
将指西班牙/西班牙语。将es
替换为en
可能会起作用,您可能需要稍微玩玩一下。