自定义admin管理站点django AdminSite

1. 新建app

django-admin startapp myadmin

2. 创建model

# myapp/models.py

from django.db import models

# Create your models here.

class MyModel(models.Model):

    title = models.CharField(max_length=20, verbose_name="title")

    class Meta:

        db_table = "my_model"

3. 创建自定义admin

# myapp/admin.py

fromdjango.contrib.adminimportAdminSite

from.models import MyModel

class MyAdminSite(AdminSite):

    site_header='MyAdmin'

admin_site=MyAdminSite(name='myadmin')

admin_site.register(MyModel)

4. 将myapp注册到INSTALLED_APPS

# settings.py
INSTALLED_APPS = [

'django.contrib.admin',

'django.contrib.auth',

'django.contrib.contenttypes',

'django.contrib.sessions',

'django.contrib.messages',

'django.contrib.staticfiles',

'myadmin'

]

5. 迁移数据库并创建superuser

python manage.py makemigrations 

python manage.py migrate

python manage.py createsuperuser

6. 修改project/urls.py

from django.urlsimport path

from django.contrib import admin

from myadmin.adminimport admin_site

urlpatterns = [

path('admin/', admin.site.urls), # 默认站点

path('myadmin/', admin_site.urls), # 自定义站点

]

runserver后即得到一个默认站点,一个自定义站点

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、配置setting INSTALLED_APPS = [ .... 'django.contrib.sit...
    汪菲宇阅读 883评论 0 0
  • 一、Django简介 Django是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网...
    仙灵儿阅读 3,483评论 0 5
  • 模块间联系越多,其耦合性越强,同时表明其独立性越差( 降低耦合性,可以提高其独立性)。软件设计中通常用耦合度和内聚...
    riverstation阅读 2,100评论 0 8
  • 数据库设置 1. Django默认是使用sqlite,如果您希望使用另一个数据库,安装适当的数据库绑定,并在数据库...
    Mlotjve阅读 445评论 0 0
  • 我们将继续使用web-poll 应用程序,并将专注于自定义Django的自动生成的管理站点, 自定义管理表单 通过...
    Mlotjve阅读 729评论 0 2