Как изменить формат шаблона даты Django по умолчанию?



у меня есть даты в изоформате в БД,%Y-%m-%d однако, когда дата передается на шаблон, он выходит как что-то вроде Oct. 16, 2011.



есть ли в любом случае, что я могу манипулировать форматом, чтобы все, что я хочу?

732   6  

6 ответов:

в вашем шаблоне вы можете использовать Django's date фильтр. Например:

<p>Birthday: {{ birthday|date:"M d, Y" }}</p>

выдает:

День Рождения: 29 Января 1983,

дополнительные примеры форматирования в date filter docs.

установить как DATE_FORMAT и USE_L10N

внести изменения для всего сайта в Django 1.4.1 добавить:

DATE_FORMAT = "Y-m-d"

на settings.py file and edit:

USE_L10N = False

так как l10n переопределяет DATE_FORMAT

это задокументировано по адресу:https://docs.djangoproject.com/en/dev/ref/settings/#date-format

просто использовать

{{you_date_field|date:'Y-m-d'}}

это покажет что-то вроде - 2016-10-16 вы можете использовать формат, как вы хотите.

для изменения формата даты в views.py а затем назначьте его шаблону.

# get the object details 
home = Home.objects.get(home_id=homeid)

# get the start date
_startDate = home.home_startdate.strftime('%m/%d/%Y')

# assign it to template 
return render_to_response('showme.html' 
                                        {'home_startdate':_startDate},   
                                         context_instance=RequestContext(request) )  

Если вам нужно показать короткую дату и время (11/08/2018 03: 23 утра) вы можете сделать это так:

{{your_date_field|date:"SHORT_DATE_FORMAT"}} {{your_date_field|time:"h:i a"}}

подробности для этого тега здесь и еще о датах по заданному формату здесь

пример:

<small class="text-muted">Last updated: {{your_date_field|date:"SHORT_DATE_FORMAT"}} {{your_date_field|time:"h:i a"}}</small>

Comments

    Ничего не найдено.