Django admin page
django는 관리자 페이지도 지원을 해준다.
우리의 project의 urls.py에 보면 가장 위에 ''admin'이라는 pattern이 있다.
from django.contrib import admin
urlpatterns = [
path('admin/', admin.site.urls),
]
우리의 서버를 열고 주소창에 amin/ 를 입력해보자 그러면
그러면 위와 같이 로그인 창이 뜨는데 terminer에서 우리의 super계정을 생성해 줘야 한다.
python manage.py createsuperuser
일단 username 과 passwoerd , email를 설정해 주고 등록해 주면된다 (y 입력!!)
그러면 db에서 anth_user에서도 확인이 가능하고 로그인 창에 아까 생성한 내용을 그대로 입력을 한다면 페이지로 들어갈 수 있다.
admin 페이지 기증 추가
로그인만 되면 그냥 users 정보만 보이거 다른 기능들을 확인 불가능 하다.
관리자 페이지에서 사용할 모델을 직접 등록을 해줘야 하는데 우리가 만든 app에서 admin.py에서 우리가 만든 model을 등록해 주면 된다.
from .models import 'your model'
admin.site.register('your model')
이렇게 등록은 한다면 CRUD가 가능 하다.
여러 커스텀 기능이 있는데 추가해 보고 사용해 봐도 좋다
@admin.register('your model')
class 'your admin name'(admin.ModelAdmin):
list_display = ("title", "created_at")
search_fields = ("title", "content")
list_filter = ("created_at",)
date_hierarchy = "created_at"
ordering = ("-created_at",)