[KT AIVLE 4기] Django - admin앱

데이터 조작 : 장고쉘, admin 기본앱 페이지, Form을 이용한 HTML 페이지

16주차 “장고 활용 웹 개발” 1일차 수업에서는 View, Model을 구현하고

장고쉘에서 데이터를 조작해봤다.

2일차 수업에서는 admin앱에서 데이터를 조작한다.

(내일 수업에서는 Form을 이용해서 HTML 페이지에서 데이터를 조작한다.)


🧩 admin앱

관리자가 Web상에서 데이터 조작을 할 수 있도록 장고에서 제공하는 기본 앱이다.

앞에서는 장고쉘로 데이터를 조작했는데, 관리자가 Web상에서 데이터를 쉽게 처리할 수 있게 한다.

왜 admin앱을 써야하냐?

HTML 웹페이지에서 Client 요청으로 데이터를 조작할 수 있으나 이는 Form을 구현해야하기 때문에 관리자 권한에서 장고에서 기본으로 제공하는 앱을 이용하는 것이다.

1. admin 페이지 등록

주의할 점 :
조작하고 싶은 View 서비스를 admin 페이지에 등록해야 한다.

"""<앱명>/admin.py"""

from django.contrib import admin
from .models import *

# Register your models here.
admin.site.register(Post)
admin.site.register(Comment)
admin.site.register(User)
admin.site.register(Profile)
admin.site.register(Tag)

2. str 메서드 재정의

admin 페이지에서 Model 인스턴스를 예쁘게 출력하기 위해서는 __str__ 메서드를 재정의해야한다.

아래와 같이 모델 인스턴스를 출력할 때 __str__ 메서드는 기본적으로 모델명_인스턴스명으로 출력되게 정의되어있기 때문이다.

p1 = Post()     # 여기서 Post는 모델 클래스명
print(p1)       # 모델 인스턴스 출력

소감

오늘은 장고쉘이 아닌 장고에서 기본적으로 제공하는 앱인 admin 앱을 이용해서 데이터 조작을 해봤다.

장고는 정말 편리한 프레임워크인 것 같다.

Categories:

Updated:

Leave a comment