Django 백그라운드 관리자 사용

2161 단어 django
요약:
Django의admin은 강력한 백엔드 관리 기능을 제공할 수 있고 웹 인터페이스에서 데이터베이스를 조작할 수 있다. 우리는admin을 수정해야 한다.py는 조작할 데이터 테이블을 백엔드 관리에 등록합니다
데이터 테이블을 만들려면 다음과 같이 하십시오.
시범을 보이기 위해서, 우리는 모델스에 있다.py에서img 데이터 테이블 규칙 만들기
그림에서verboname은 관리자 인터페이스에 테이블 필드를 표시하는 이름입니다. 정의된class Meta의verboname 은 관리자 인터페이스에 표시되는 테이블 이름입니다
admin을 수정합니다.py 파일
from django.contrib import admin
from app1 import models
# Register your models here.

admin.site.register(models.img)    #   admin   

서비스 시작, 인터페이스 입장
python manage.py makemigrations #       py  
python manage.py migrate #  py  ,     
python manage.py runserver #    

브라우저 열기, 액세스http://127.0.0.1:8000/admin
설정한 계정 비밀번호를 입력하여 인터페이스에 입장
기본 기능은 표를 간단하게 첨삭하고 수정할 수 있으며, 대량 업데이트와 같은 조작이 필요하다면 상응하는 동작을 맞춤형으로 만들어야 한다
컨텐트 표시 사용자화:
우리가 만든 테이블의 인터페이스에 들어갈 때 기본적으로 표시되는 내용은object입니다
모델스에서py의 상응하는 표에 정의 쓰기str__의 필드
효과는 다음과 같다.
기본적으로 표시된 내용은 하나입니다. ModelAdmin의list 를 정의할 수 있습니다.display를 사용하여 수정합니다.
from django.contrib import admin
from app1.models import img
# Register your models here.

class imgAdmin(admin.ModelAdmin):
    list_display = ('title','summary','file')
    

admin.site.register(img,imgAdmin)

데이터를 클릭하면 기본적으로 모든 필드가 AutoField가 아니며 editable=True는 하나의 필드에 모형에 정의된 필드와 같은 순서를 가지고 있습니다.
ModelAdmin에서 fields 또는 exclude를 정의하여 수정할 수 있습니다.
class imgAdmin(admin.ModelAdmin):
    list_display = ('title','summary','file')
    fields = ('title',)

exclude는fields와 상반된다
사용자 정의 작업
기본 작업은 하나만 삭제
ModelAdmin을 통해 사용자 정의 가능
def change_up(modeladmin, request, queryset):  #    
    queryset.update(stat='1')
change_up.short_description = "up" #        

def change_down(modeladmin, request, queryset):
    queryset.update(stat='0')
change_down.short_description = "down"



class imgAdmin(admin.ModelAdmin):
    list_display = ('title','summary','file','stat')
    fields = ('title',)
    actions = [change_up,change_down] #    

좋은 웹페이지 즐겨찾기