Django 에서 Admin 스타일 과 기능 을 사용자 정의 하 는 방법
1 페이지 중국어 수정
1.1 언어 를 중국어 로 설정
settings.py
LANGUAGE_CODE = 'zh-hans'
수정 결과1.2 응용 관리 설정
응용/apps.py
from django.apps import AppConfig
class BbssConfig(AppConfig):
name = 'bbs'
#
verbose_name = 'BBS '
수정 결과1.3 데이터베이스 테이블 을 중국어 로 설정
응용/models.py
class Comment(models.Model):
topic = models.ForeignKey(Topic, on_delete=models.CASCADE)
comment_text = models.TextField(max_length=2000)
author = models.ForeignKey(User, default=1, on_delete=models.CASCADE)
picture = models.FileField(blank=True, null=True) # ,
pub_date = models.DateTimeField(auto_now_add=True)
def get_comment_text_md(self):
""" markdown html"""
return mark_safe(markdown(self.comment_text))
def __str__(self):
return self.comment_text
class Meta:
verbose_name = ' ' #
verbose_name_plural = ' ' #
기본 데이터베이스 시트 는 배경 에 복수 형식 으로 표시 되 며,중국 어 는 복수 형식 이 없 기 때문에 두 가지 형식 을 모두 같은 이름 으로 설정 합 니 다.수정 결과
1.4 데이터베이스 테이블 필드 이름 을 중국어 로 변경
응용/models.py
class Comment(models.Model):
topic = models.ForeignKey(Topic, on_delete=models.CASCADE, verbose_name=' ')
comment_text = models.TextField(' ', max_length=2000)
author = models.ForeignKey(User, default=1, on_delete=models.CASCADE, verbose_name=' ')
picture = models.FileField(' ', blank=True, null=True) # ,
pub_date = models.DateTimeField(' ', auto_now_add=True)
def get_comment_text_md(self):
""" markdown html"""
return mark_safe(markdown(self.comment_text))
def __str__(self):
return self.comment_text
class Meta:
verbose_name = ' ' #
verbose_name_plural = ' ' #
일반적인 필드 는 이름 을 표시 하 는 위치 매개 변 수 를 추가 하면 됩 니 다.한 쌍 의 다 중 관 계 는 키워드 매개 변 수 를 지정 해 야 합 니 다verbose_name
그리고 키워드 매개 변 수 는 위치 매개 변수 뒤에 두 어야 합 니 다.수정 결과
2 배경 스타일 수정
django-graphpelli 제3자 응용 프로그램 을 사용 하여 admin 스타일 을 수정 합 니 다.
GitHub: https://github.com/sehmaschine/django-grappelli
문서:https://django-grappelli.readthedocs.io/en/latest/quickstart.html
기타 도구:https://djangopackages.org/grids/g/admin-interface/
2.1 설치
pip install django-grappelli
2.2 항목 가 져 오기settings.py
INSTALLED_APPS = [
'accounts.apps.AccountsConfig',
'polls.apps.PollsConfig',
'bbs.apps.BbssConfig',
'grappelli',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
2.3 URL 가 져 오기프로젝트/urls.py
urlpatterns = [
path('grappelli', include('grappelli.urls')),
path('admin/', admin.site.urls),
path('', include('bbs.urls')),
path('accounts/', include('accounts.urls')),
]
2.4 정적 파일 을 수집 하여 한 곳 에 통일 적 으로 둔다.settings.py 에 추가
#
STATIC_ROOT = os.path.join(BASE_DIR, 'static-files')
명령 을 집행 하 다
python manage.py collectstatic
자동 생 성
서 비 스 를 다시 시작 하면 관리 페이지 가 수정 되 었 습 니 다.
2.5 사용자 정의 제목
settings.py 에 추가
#
GRAPPELLI_ADMIN_TITLE = 'Z-BBS ADMIN'
페이지 새로 고침2.6 admin 페이지 기능 열기
응용/admin.py
from django.contrib import admin
# Register your models here.
from .models import Topic, Comment
class TopicAdmin(admin.ModelAdmin):
list_display = ('topic_text', 'author', 'pub_date')
search_fields = ('topic_text', 'author')
list_editable = ('author',)
list_per_page = 10
class CommentAdmin(admin.ModelAdmin):
list_display = ( 'comment_text', 'author', 'pub_date', 'topic')
search_fields = ('comment_text', 'author')
list_editable = ('author',)
list_per_page = 10
2.7 admin 필터 기능 열기
응용/admin.py
class TopicAdmin(admin.ModelAdmin):
list_display = ('topic_text', 'author', 'pub_date')
list_filter = ('topic_text', 'author', 'pub_date')
search_fields = ('topic_text',)
list_editable = ('author',)
list_per_page = 10
class CommentAdmin(admin.ModelAdmin):
list_display = ( 'comment_text', 'author', 'pub_date', 'topic')
list_filter = ('comment_text', 'author', 'pub_date', 'topic')
search_fields = ('comment_text',)
list_editable = ('author',)
list_per_page = 10
오픈 후 페이지 새로 고침(ctrl+shift+r)을 강제 하고 js 와 css 코드 를 다시 불 러 옵 니 다.총결산
위 에서 말씀 드 린 것 은 소 편 이 소개 한 Django 에서 Admin 스타일 과 기능 을 사용자 정의 하 는 실현 방법 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.소 편 은 바로 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
만약 당신 이 본문 이 당신 에 게 도움 이 된다 고 생각한다 면,전 재 를 환영 합 니 다.번 거 로 우 시 겠 지만 출처 를 밝 혀 주 십시오.감사합니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Django의 질문 및 답변 웹사이트환영 친구, 이것은 우리의 새로운 블로그입니다. 이 블로그에서는 , 과 같은 Question-n-Answer 웹사이트를 만들고 있습니다. 이 웹사이트는 회원가입 및 로그인이 가능합니다. 로그인 후 사용자는 사용자의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.