Django 11. admin 페이지 만들기
Django 11. admin 페이지 만들기
1. admin 페이지
관리자 페이지
프로젝트의 urls.py 파일에 보면 기본적으로 admin 페이지로 연결되어 있음
urlpatterns = [
path('admin/', admin.site.urls),
]
2. 슈퍼 유저 만들기
관리자 페이지기 때문에 슈퍼유저가 필요함
터미널이 python3 manage.py createsuperuser 입력
username, e-mail address, pass word 입력해서 슈퍼유저 생성
서버를 실행시키고 localhost:8000/admin 으로 이동
로그인 페이지가 뜨면 생성한 슈퍼 유저로 로그인
그룹이나 유저를 추가할 수도 있음
3. 어드민 페이지에 앱 추가하기
앱 폴더의 admin.py 파일에 admin.site.register([테이블 명]) 작성
from django.contrib import admin
from .models import Question, Choice
admin.site.register(Question)
admin.site.register(Choice)
or
from django.contrib import admin
from .models import Question, Choice
@admin.register(Question)
class QuestionAdmin(admin.ModelAdmin):
pass
@admin.register(Choice)
class ChoiceAdmin(admin.ModelAdmin):
pass
어드민 페이지에 앱과 테이블이 추가됨
테이블의 데이터를 자유롭게 다룰 수 있음
테이블을 클릭했을 때 표시될 내용은 models.py 클래스에 __str__ 함수를 정의해서 지정할 수 있음
* 예시
class Survey(models.Model):
user_name = models.CharField(max_length=20)
user_age = models.IntegerField(default=0)
def __str__(self):
return f"{self.user_name}--{self.user_age}"
* 리스트로 요소 보여주기
admin.py 에 class로 표시할 모델을 설정하고 멤버변수 list_display에 리스트로 보여줄 커럼 이름을 작성하면 해당 요소들을 리스트로 보여줌
* 예시
@admin.register(Choice)
class ChoiceAdmin(admin.ModelAdmin):
list_display = ["question","choice_text", "votes"]





댓글
댓글 쓰기