티스토리 뷰

728x90
반응형

 

 

장고에 디폴트로 들어있는 sqlite3에 계정을 만듭니다

python3 manage.py createsuperuser

 

계정리스트를 쭉 출력하다보면 계정마다 date_joined 를 가지고 있습니다

가입한(계정을 생성한) 날짜이죠

 

이는 utc 시간이므로 한국시간에 맞추려면 +timedelta(hours=9)를 해주어야 하구요

 

views.py에서  가입날짜를 포함한 계정정보를 template에 넘겨줍니다

from django.contrib.auth.models import User
from datetime import datetime, timedelta

def test(request):
    user = list(User.objects.values())
    for n in user:
        n['date_joined'] += timedelta(hours=9)
    return render(request, 'test.html',{"user":user })

 

템플릿에서는 테이블에 for문으로 계정들을 출력해줍니다

날짜를 출력해 주려면 {{n.date_joined}}만 했어도 되지만,

예쁘게 형식에 맞춰 출력해주기 위해 템플릿태그를 사용했습니다

{{date_joined|date:'Y-m-d H:i:s}}

(년도-월-일 시:분:초)

여기서 시는 H대신 h를 쓰면 18시가 6시로, 19시가 7시로....  표기됩니다.

 

<table class="table_data ">
  <thead id="thead">
    <tr>
      <th>번호</th>
      <th>계정명</th>
      <th>마지막 로그인 일시</th>
      <th>계정 생성 일시</th>
    </tr>
  </thead>
  <tbody id="tbody">
    {% for n in user %}
    <tr>
      <td>{{forloop.counter}}</td>
      <td>{{n.username}}</td>
      <td>{{n.last_login|date:'Y-m-d H:i:s'}}</td>
      <td>{{n.date_joined|date:'Y-m-d H:i:s'}}</td>
    </tr>
    {%  endfor %}
  </tbody>

 

웹을 열어 원하는대로 예쁘게 잘 출력되었는지 확인하면 끝 !

 

728x90
반응형
댓글