Как сделать форматирование даты в шаблоне Django? - PullRequest
0 голосов
/ 25 сентября 2019

Я прошу прощения за мой английский уже.Я провел некоторые исследования, но ни один из них не помог мне.Но данные не отображаются.Появляется, если я не наберу "date:" D d M y ". Я получаю данные с помощью API. Поэтому все строки являются строковыми.

Пример:

{% for row in activities %}
    <tr>
        <td style="width:30%" class="ads-details-td">
            <div>           
                <p><strong> Date: </strong> {{ row.dateStart|date:"D d M Y" }} </p>         
            </div>
        </td>
    </tr>
{% endfor %}

файл views.py

    if user_response.status_code == 401:
        return render(self.request, 'profile.html', {
            'error': 'Beklenmedik bir hata oluştu. Lütfen tekrar deneyin'
        })
    else:
        user_data = user_response.json()
        activities = activity_response.json()

        context = super().get_context_data(**kwargs)
        context['first_name']     = user_data['firstName']
        context['last_name']      = user_data['lastName']
        context['activities']     = activities['list']
        context['total_activity'] = activities['total']

        return context

Формат даты начала поступления

'dateStart': '2019-02-05 05:45:00'

Буду рад, если вы мне поможете.

1 Ответ

1 голос
/ 25 сентября 2019

Ваш код выглядит хорошо.

Я думаю, проблема в том, что вы передаете дату и время как строку, а не как datetime -объект.

Если dateStart является datetime -объект должен работать.

Из Документов :

Если значение равно datetime объект (например, результат datetime.datetime.now () ), на выходе будет строка 'Ср 09 Янв 2008' .

Редактировать:

Чтобы получить datetime для данной строки, вы можете сделать что-то вроде

from datetime import datetime

datetime.strptime('2019-02-05 05:45:00', '%Y-%m-%d %H:%M:%S')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...