오늘받은 메시지를 그룹화하려고합니다. 어제 받았습니다. 명확히하기 위해, 나는 "오늘"이라는 단일 헤더를 가지고 그 메시지를 아래에 나열하려고합니다. 나는 그 날에받은 각 메시지 (현재 무슨 일이 일어나고 있는지)와 함께 "오늘"을 인쇄하려하지 않습니다.for 루프를 사용하는 동안 '받은 날짜'를 한 번만 인쇄하려면 어떻게해야합니까?
나는 현재 for 루프 내에 오늘 및 예선 헤더를 가지고 있으므로 메일 메시지마다이 헤더를 인쇄하는 이유는 이해하지만 이전에 언급 한대로 한 번만 인쇄하려고합니다. 내 질문은, 어떻게 내가 아래의 코드를 사용하여 이것을 얻을 수 있습니까? 각 기간 (오늘, 어제, 지난 주 등)마다 별도의 for 루프를 만들어야합니까, 아니면이를 수행하는보다 효율적인 방법이 있습니까?
{% for message in messages %}
{% if message.date - current.date < 24 hours %}
TODAY
Sent by: {{ message.sender }}
{{ message.body }}
{% elif message.date - current.date > 24 hours and message.date - current.date < 48 hours %}
YESTERDAY
Sent by: {{ message.sender }}
{{ message.body }
{% endif %}
{% endfor %}
당신 별도의 루프가 필요합니다. – rfj001
당신은 간단하게'flag = 0'을 사용할 수 있고 처음으로 그것을 증가시킨 다음'if flag! = 0'를 출력하지 않을 것입니다. – vks
메시지가 날짜순으로 정렬되었다고 가정하면 작동 할 수 있습니다. – rfj001