2009-07-24 2 views
34

그건 :django 템플릿에서 dateTime의 형식을 지정하는 방법은 무엇입니까?

{{ wpis.entry.lastChangeDate|date:"D d M Y" }} 

이 날 수 있습니다 (왜?) :

2009-07-24 21:45:38.986156 

그리고 난 부분 부분을 생략하는 방법을 모른다 ... 내 모델에서

는 내가 가지고 :

addedDate = models.DateTimeField(default=datetime.now) 
+0

, 여기에 모든 라인

  • {{wpis.entry.UserID.username}} @ [{{wpis.entry.lastChangeDate | 날짜 : "D d를 내"}}]
  • IProblemFactory

    +3

    이상한, 그것은 나를 위해 작동합니다. lastChangeDate가 Django DateTime입니까? – freiksenet

    +1

    lastChangeDate를위한 것이 아닌 addedDate를위한 것입니다. 그래서 나는 궁금합니다. – freiksenet

    답변

    6

    이를 사용할 수 있습니다

    addedDate = datetime.now().replace(microsecond=0)

    3

    나는 wpis.entry.lastChangeDate이 어떻게 든보기에있는 문자열로 변환되었다고 생각합니다. 앞부분은 템플릿에 도착합니다.

    이 가설을 검증하기 위해 문자열에만있는 속성/메소드 (예 : wpis.entry.lastChangeDate.upper)가 있는지 확인한 다음 템플릿이 충돌하는지 확인하십시오.

    custom filter을 직접 작성하여 디버깅 목적으로 사용하여 객체를 검사하고 페이지에 검사 결과를 쓰거나 단순히 콘솔에 기록 할 수 있습니다. 객체를 검사하여 실제로 DateTimeField인지 확인할 수 있습니다.

    관련없는 알림에서 생성시 날짜 시간을 설정하려면 models.DateTimeField(auto_now_add=True)을 사용하지 않으시겠습니까?

    94

    이 정확하게 당신이 원하는 것입니다. 이 시도 :이 물론

    {{ wpis.entry.lastChangeDate|date:'Y-m-d H:i' }} 
    
    +22

    사용 가능한 모든 서식 옵션에 대한 자세한 내용은 Django 문서 : https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date –

    +0

    참고 :':'다음에 공백이 없어야하고 작은 따옴표를 사용하십시오. – FaithReaper