当前位置: 首页 > news >正文

福州建网站 做网页大数据获客系统

福州建网站 做网页,大数据获客系统,100元网站建设,做周边的专业网站系列文章目录 第一章 Django使用的基础知识 第二章 setting.py文件的配置 第三章 路由的定义与使用 第四章 视图的定义与使用 第五章 二进制文件下载响应 第六章 Http请求&HttpRequest请求类 第七章 会话管理(Cookies&Session) 第八章 文件上传…

系列文章目录

第一章 Django使用的基础知识
第二章 setting.py文件的配置
第三章 路由的定义与使用
第四章 视图的定义与使用
第五章 二进制文件下载响应
第六章 Http请求&HttpRequest请求类
第七章 会话管理(Cookies&Session)
第八章 文件上传实现
第九章 多种视图view
第十章 Django5模板引擎
第十一章 模型定义与使用
第十二章 ORM执行SQL语句和事务
第十三章 表单定义与使用
第十四章 内置Admin系统
第十五章 内置Auth认证系统


文章目录

  • 系列文章目录
  • 前言
  • 内置管理系统初体验
  • 注册模型到Admin系统
    • 方式一,直接将模型注册到admin后台,以BookTypeInfo模型为例
    • 方式二:自定义类,继承ModelAdmin,以BookInfo为例
  • 内置Admin系统自定义设置
  • 内置Admin系统二次开发
    • 自定义Admin模版
  • 总结


前言

Admin后台系统也成为网站后台管理系统,主要对网站的信息进行管理,如文字、图片、影音和其他日常使用的文件的发布、更新、删除等操作,也包括功能信息的统计和管理,如用户信息、订单信息和访客信息等。简单来说,它是对网站数据库和文件进行快速操作和管理的系统,以使网页内容能够及时得到更新和调整。


内置管理系统初体验

当一个网站上线之后,网站管理员通过网站后台系统对网站进行管理和维护。

Django 已内置Admin后台系统,在创建Django项目的时候,可以从配置文件settings.py中看到项目已默认启用Admin后台系统。

在这里插入图片描述

urls.py里定义了Admin系统的首页地址:

在这里插入图片描述

我们浏览器输入http://127.0.0.1:8000/admin/即可进入Admin系统首页,默认跳转到Admin系统登录页面。
在这里插入图片描述

我们发现是英文,我们一般开发交付给客户,必须是本地化中文。我们可以加一个中文本地化的中间件即可实现;

settings.py里加下:

# 使用中文
'django.middleware.locale.LocaleMiddleware',

在这里插入图片描述
注意下有顺序要求。

Admin系统用户,权限,认证相关的表有如下6个,其中auth_user是用来存后台管理员信息,默认里面是没有数据的。
在这里插入图片描述

我们可以通过python内置的manage.py的createsuperuser命令来创建超级管理员的账号和密码。
输入 createsuperuser命令,提示让我们输入用户名,再输入邮箱,以及密码和确认密码,最终我们可以强制输入y,确认。

在这里插入图片描述
这样auth_user数据库表有就有管理员数据了。

我们回到Admin登录页面,输入刚才创建的用户名和密码:
在这里插入图片描述

点击登录按钮,则进入系统管理主页;

在这里插入图片描述

在Admin后台系统中可以看到,网页布局分为站点管理、认证和授权、用户和组,分别说明如下: (1)站点管理是整个Admin后台的主体页面,整个项目的App所定义的模型都会在此页面显示。 (2)认证和授权是Django内置的用户认证系统,包括用户信息、权限管理和用户组设置等功能。 (3)用户和组是认证和授权所定义的模型,分别对应数据表auth_user和 auth_user_groups。
在这里插入图片描述

注册模型到Admin系统

我们开发业务系统的时候,会定义很多的业务模型,我们可以把模型注册到Admin系统,让Admin系统帮我们维护这些模型。也就是在Admin后台自动给模型实现增删改查功能。

注册模型到Admin系统有两个方式,我们都来演示下:

方式一,直接将模型注册到admin后台,以BookTypeInfo模型为例

打开admin.py

from django.contrib import adminfrom helloWorld.models import BookTypeInfo# Register your models here.
# 方法一,将模型直接注册到admin后台
admin.site.register(BookTypeInfo)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

方式二:自定义类,继承ModelAdmin,以BookInfo为例

@admin.register(BookInfo)
class BookInfoAdmin(admin.ModelAdmin):# 设置显示字段list_display = ('id', 'bookName', 'price', 'publishDate', 'bookType')

我们可以点进ModelAdmin类里看下,我们可以对模型的增删改查操作做精细化的配置,包括显示字段,分页,可编辑字段,查询字段,排序等。

在这里插入图片描述
Admin后台就多了图书信息

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
我们同样可以对图书信息做增删改查操作;

再加亿点点功能:

class BookInfoAdmin(admin.ModelAdmin):# 设置显示字段list_display = ['id', 'bookName', 'price', 'publishDate', 'bookType']search_fields = ['bookName', 'price']list_filter = ('bookType', 'publishDate')list_per_page = 10list_editable = ('bookName', 'price', 'publishDate', 'bookType')fieldsets = (('基本信息', {'fields': ('bookName', 'price', 'publishDate')}),('高级信息', {'fields': ('bookType',)}),)

在这里插入图片描述
在这里插入图片描述

具体设置可以看Django定制Admin页面详细实例(展示页面和编辑页面)

内置Admin系统自定义设置

更改app模块名、title、header、index。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

内置Admin系统二次开发

前面我们体验了Admin系统,以及模型注册,自定义设置。但是依然满足不了我们实际的业务开发需求。接下来,我们来讲下更细致的Admin系统二次开发。

创建一个普通管理员账户
首先我们在Admin后台系统里新建一个普通管理员账号。

认证和授权的用户右侧点击“新增”
在这里插入图片描述

勾选“职员状态”
在这里插入图片描述

这样我们就可以用ikun这个用户登录系统了。在这里插入图片描述
设置不可编辑字段 get_readonly_fields()
业务开发时,有时候一些敏感字段,我们不允许普通管理员修改。我们可以通过重写ModelAdmin的get_readonly_fields()方法实现;

    def get_readonly_fields(self, request, obj=None):if request.user.is_superuser:return []else:return [ 'price', 'bookType']

在这里插入图片描述
可以看到这里只有价格和种类能修改了。

这里我们同时也发现,字段label名称是英文BookName,原因是我们没有设置属性字段的verbose_name

我们可以在models.py里,加下verbose_name配置即可;
在这里插入图片描述
在这里插入图片描述
可以看到字段都变为中文名称了。

当然还有很多细粒度设置的方法,如下

formfield_for_foreignkey() 设置外键下拉框过滤筛选

formfield_for_foreignkey() 重写外键下拉框数据,比如增加下拉选项。

save_model() 添加或者修改处理逻辑重写 ,可以增加一些日志等处理。

等等…

自定义Admin模版

Admin后台管理系统的模版文件和Django框架内置提供的,我们可以在源码里找到。

具体位置在django -> contrib -> admin -> templates 下
在这里插入图片描述
很多时候我们需要修改默认的模版,包括程序功能,样式等,来达到业务需求。

我们可以直接修改源码里的模版,但是这种方式不好,如果一台机器有多个项目,会影响其他项目使用。

我们提倡在项目的模块项目的templates下,通过优先级来实现修改模版。

具体方式如下:

模块项目(比如我们这是helloWorld项目)的templates下,新建admin目录,然后admin目录下创建你需要覆盖的模版名称。

比如我们覆盖下修改的模版change_form.html
在这里插入图片描述

总结

本章学习了内置的Admin系统的用法,总的来说比自己手写要快要方便很多。

http://www.khdw.cn/news/57269.html

相关文章:

  • 怎样将自己做的网站发布到外网上中国疫情最新数据
  • 做一个营销型网站有哪些内容搜索风云榜入口
  • 成都网站建设短视频平台推广
  • 购物网站建设项目可研报告it培训机构学费一般多少
  • 深圳品牌创意网站建设如何做运营推广
  • app网站开发成功案例app注册接单平台
  • 个人怎么进行网络广告营销搜索引擎优化效果
  • 阿里云云服务器ecs做网站访问慢南昌seo公司
  • 外发加工网站哪个靠谱百度快照推广有效果吗
  • 微网站二级页面怎么做直通车推广怎么做
  • 石家庄制作公司网站智能建站平台
  • 多种语言的网站中国足彩网竞彩推荐
  • 山东省住房建设厅网站安全处网站定制设计
  • 海外永久不收费的加速器什么建站程序最利于seo
  • 世界500强企业数量百度seo效果怎么样
  • 母婴产品网站模板百度知道登录
  • 成都网站建设哪家好青岛谷歌优化公司
  • 互联网技术论坛杭州seo运营
  • 网站建设培训教程购买seo关键词排名优化官网
  • 上海网站制作浏览器观看b站视频的最佳设置
  • 蚂蜂窝网站源码学生个人网页制作html代码
  • 商城类网站功能列表互联网营销的方法有哪些
  • 跨平台网站制作nba今日最新消息
  • 企业网站制作运营抖音seo排名系统哪个好用
  • 怎么做购物微信网站深圳推广网络
  • 校园二手物品交易网站开发背景某企业网站的分析优化与推广
  • 免费二维码制作网站优化网站推广教程整站
  • wordpress禁用客户端登录搜索seo引擎
  • 深圳模板建站多少钱深圳关键词自动排名
  • 免费wordpress导购主题武汉seo排名扣费