본문 바로가기
WEB/Django

[Django] admin 페이지에 Notice 등록하기

by snow_white 2022. 4. 10.

admin

▪️ djangomtv/main/admin.py 에 Notice 등록하기

from django.contrib import admin
from .models import Notice
# Register your models here.

admin.site.register(Notice)

▪️ 서버 구동 후 Notices 생성된 것 확인

▪️ Notices 추가

▪️ Notice object로 저장되는 이유?

djangomtv/main/models.py 에서 어떤 값이 Notice를 대표하는 제목인지 명시해주지 않아서!

from django.db import models

# Create your models here.
class Notice(models.Model): # 클래스 작성시 변수만 지정하면 됨
    title = models.CharField(max_length=100) # 게시물제목: 문자열 field, 최대 길이 100 제한
    likeCount = models.IntegerField() # 좋아요수
    viewCount= models.IntegerField() # 뷰수
    contents= models.TextField() # 내용
    
    def __str__(self):
        return f'{self.title} : {self.likeCount}' # title이 Notice를 대표하는 문자열 값이야

▪️ 위의 코드 추가 후 예쁘게 나옴 😉

각 notice의 title을 클릭하면 notice 변경 페이지 보여짐

 

▪️ title과 함께 likeCount 좋아요 수도 함께 나타나게 해보자

from django.contrib import admin
from .models import Notice
# Register your models here.

#admin.site.register(Notice)

@admin.register(Notice)
class NoticeAdmin(admin.ModelAdmin):
    list_display = ['title', 'likeCount']
		list_display_links = ['title', 'likeCount'] # likeCount에도 notice 변경 페이지 보여줄 수 있는 링크 추가

likeCount 클릭해서 Notice 변경 가능

댓글