Как изменить поле даты и времени со многими объектами? - PullRequest
0 голосов
/ 18 января 2020

Я хочу изменить поле даты и времени, но в current_user_moneybooks есть много объектов.

, поэтому я хочу знать, есть ли способ изменить формат поля даты и времени.

Я пытался ссылка :

for current_user_moneybook in current_user_moneybooks
   def start_date(self):
        return self.start_date.strftime("%Y-%m-%d")
    def end_date(self):
        return self.end_date.strftime("%Y-%m-%d")

или

def all_moneybooks(request):
    current_user = request.user

    if current_user.is_authenticated:
        current_user_moneybooks = current_user.owner.all

        start_date.strftime("%Y-%m-%d") for current_user_moneybook in current_user_moneybooks
        end_date.strftime("%Y-%m-%d") for current_user_moneybook in current_user_moneybooks

        return render(request, "home.html", context={"current_user": current_user, "all_moneybooks": all_moneybooks, "current_user_moneybooks": current_user_moneybooks})
    else:
        return render(request, "home.html", context={"current_user": current_user, "all_moneybooks": all_moneybooks})

и результат:

start_date.strftime ("% Y-% m-% d" ) для current_user_moneybook в current_user_moneybooks ^ SyntaxError: неверный синтаксис

1 Ответ

1 голос
/ 18 января 2020

Прежде всего, синтаксическая ошибка, которую вы получаете, связана с неправильной реализацией понимания списка.

Ваш итератор должен находиться в списке, а также вам нужно использовать итератор для изменения его атрибутов.

Этот

start_date.strftime("%Y-%m-%d") for current_user_moneybook in current_user_moneybooks

должен выглядеть следующим образом

modified_dates = [current_user_moneybook.start_date.strftime("%Y-%m-%d") for current_user_moneybook in current_user_moneybooks]

"all_moneybooks" - это имя определения, и я не уверен, почему вы отправляете его в шаблон.

Если все, что вы хотите сделать, это изменить представление формата даты в шаблоне, вы можете сделать это, используя встроенный фильтр шаблона django, например

{{ some_date|date:’D, d M, Y' }} -> Thu, 03 Dec, 2015
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...