1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 十五 Django-admin

十五 Django-admin

时间:2024-06-15 02:10:17

相关推荐

十五 Django-admin

安装django-admin

为数据进行增删改查是一个枯燥,有没有创造性的工作。django提供了一个内置的app,我们只需要做简单的配置就可以自动生成一个功能强大的管理后台。

要使用django admin非常简单:

首先你需要在INSTALL_APPS中注册django.contrib.admin,然后它的依赖, 模板设置

如果你自定义了MIDDLEWARE,必须包含

django.contrib.auth.middleware.AuthenticationMiddleware

`django.contrib.messages.middleware.MessageMiddleware

在根路由中配置admin

path('admin/', admin.site.urls),

当你做完这些,你就可以通过'/admin'(默认)访问admin站点。

默认情况下,创建的项目会自动安装admin,不需要做任何操作即可使用django-admin。

创建管理员用户

要使用django-admin,你还需要创建一个用户来登录站点。通过python manage.py createsuperuser命令。

管理模型

接下来,我们就需要为我们要管理的模型定义ModelAdmin。

app里有一个admin.py,在这个文件中我们注册我们想要管理的模型,代码如下:

from django.contrib import admin# Register your models here.from .models import Student, StudentDetailadmin.site.register(Student)admin.site.register(StudentDetail)

然后访问admin站点,通过用刚才创建的超级管理员账号登录,你会看到如下页面

接下来我们就可以对这些模型的数据进行增删改查。

自定义设置

django admin 的强大之处在于,可以通过简单的设置,可以定义管理页面的显示方式。

如果我们要自定义设置,我们需要在admin.py中定义admin.ModeAdmin的子类:

class StudentAdmin(admin.ModelAdmin):list_display = ['id', 'name', 'sex', 'qq', 'phone']list_display_links = ['name']list_filter = ['sex']search_fields = ['name', 'qq', 'name', 'c_time']list_per_page = 1# fields = ['sex', 'name']fieldsets = [(None, {'fields': ['name', 'sex']}),('详细信息', {'fields': ['qq', 'phone', 'grade']}),('设置', {'fields': ['is_delete']})]admin.site.register(Student, StudentAdmin)admin.site.register(StudentDetail)

列表页属性:

list_display:显示字段,可以点击列头进行排序

list_filter:过滤字段,过滤框会出现在右侧

search_fields:搜索字段,搜索框会出现在上侧

list_per_page:分页,分页框会出现在下侧

list_display_links: 定义点击哪些字段可以调到修改增加页面

添加、修改页属性:

fields:属性的先后顺序

fieldsets:属性分组

注意:上面两个属性,二者选一。

更多详见官方文档:/zh-hans/3.2/ref/contrib/admin/

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。