[Python Django] Admin - 모델 연결 후 설정

2022. 3. 23. 12:18Python/Django Framework

반응형

어드민에 Model을 연결하였지만 데이터의 목록이 보기좋게 나오지 않습니다.
이를 보기 좋게 만들어 주기위한 설정을 진행하겠습니다.

모델 파일 수정

  • project1/project_user/models.py파일을 아래와 같이 수정해줍니다. (설명 참조)
# project1/project_user/models.py

from django.db import models


# Create your models here.
class ProjectUser(models.Model):
    user_name = models.CharField(max_length=32, verbose_name="이용자 명")
    user_password = models.CharField(max_length=64, verbose_name="비밀 번호")
    reg_dttm = models.DateTimeField(auto_now=True, verbose_name="등록 시간")

    class Meta:
        db_table = 't_project_user'
        verbose_name = "프로젝트 이용자 테이블" # 테이블 설명
        verbose_name_plural = "프로젝트 이용자" # 좌측 메뉴에 출력되는 이름

	
    # 오브젝트를 읽을 때 지정된 String을 반환하게 만듭니다
    # 이 세팅으로 테이블 결과 목록에 user_name이 출력되게 됩니다.
    # foreign key 설정시에 해당 정보가 셀렉트박스 등에 출력된다.
    def __str__(self):
        return self.user_name
  • 결과가 다음과 같이 반영됩니다

기존보다는 보기 좋아졌지만 테이블 데이터 정보가 user_name 한가지만 나오는 것인 불편한 부분입니다. 목록에 나오는 정보를 필요한 정보가 나올 수 있게 수정해보겠습니다.

모델의 목록 출력 정보 수정

  • 모델의 Admin.py 정보 수정
# project1/project_user/admin.py

from django.contrib import admin

from .models import ProjectUser


# Register your models here.
class ProjectUserAdmin(admin.ModelAdmin):
	# 목록 출력 정보를 설정한다. 필요한 컬럼을 보여줄 수 있다.
    list_display = ('user_name', 'user_password', 'reg_dttm')


admin.site.register(ProjectUser, ProjectUserAdmin)
  • 결과

반응형