zdpdjango_argonadmin使用Django开发一个美观的后台管理系统

初始代码

在这里插入图片描述

安装依赖

pip install -r requirements.txt

生成管理员账户

迁移模型:

python manage.py makemigrations
python manage.py migrate

创建超级用户:

python manage.py createsuperuser

启动服务

python manage.py runserver

浏览器访问:http://localhost:8000/
在这里插入图片描述

梳理底部代码

<footer class="footer pt-3  "><div class="container-fluid"><div class="row align-items-center justify-content-lg-between"><div class="col-lg-6 mb-lg-0 mb-4"><div class="copyright text-center text-sm text-muted text-lg-start">&copy; <a href="https://github.com/zhangdapeng520" target="_blank">Python私教</a> - 张大鹏</div></div><div class="col-lg-6"><ul class="nav nav-footer justify-content-center justify-content-lg-end"><li class="nav-item"><a href="https://github.com/zhangdapeng520"class="nav-link text-muted" target="_blank">旗舰版本</a></li><li class="nav-item"><a href="https://github.com/zhangdapeng520" class="nav-link text-muted" target="_blank">支持</a></li></ul></div></div></div>
</footer>

效果:
在这里插入图片描述

配置后台为中文

通过修改配置文件,配置后台语言为中文:

LANGUAGE_CODE = "zh-hans"
TIME_ZONE = "Asia/Shanghai"
USE_I18N = True
USE_TZ = True

效果如下:
在这里插入图片描述

配置顶部导航

navigation.html

{% load static %}<!-- Navbar -->
<nav class="navbar navbar-main navbar-expand-lg px-0 mx-4 shadow-none border-radius-xl " id="navbarBlur"data-scroll="false"><div class="container-fluid py-1 px-3">{#面包屑导航#}<nav aria-label="breadcrumb"><ol class="breadcrumb bg-transparent mb-0 pb-0 pt-1 px-0 me-sm-6 me-5"><li class="breadcrumb-item text-sm"><a class="opacity-5 text-white" href="javascript:;">页面</a></li><li class="breadcrumb-item text-sm text-white active" aria-current="page">数据面板</li></ol></nav><div class="collapse navbar-collapse mt-sm-0 mt-2 me-md-0 me-sm-4" id="navbar">{#搜索框#}<div class="ms-md-auto pe-md-3 d-flex align-items-center"><div class="input-group"><span class="input-group-text text-body"><i class="fas fa-search" aria-hidden="true"></i></span><input type="text" class="form-control bg-white" placeholder="请输入..."></div></div>{#右侧导航链接#}<ul class="navbar-nav  justify-content-end">{% if request.user.is_authenticated %}{% if request.user.is_superuser %}<li class="nav-item d-flex align-items-center"><a href="{% url 'admin:logout' %}" class="nav-link text-white font-weight-bold px-0"><i class="fa fa-user me-sm-1"></i><span class="d-sm-inline d-none me-3">注销</span></a></li><li class="nav-item d-flex align-items-center"><a href="{% url 'admin:password_change' %}"class="nav-link text-white font-weight-bold px-0"><span class="d-sm-inline d-none">修改密码</span></a></li>{% else %}<li class="nav-item d-flex align-items-center"><a href="{% url 'logout' %}" class="nav-link text-white font-weight-bold px-0"><i class="fa fa-user me-sm-1"></i><span class="d-sm-inline d-none me-3">注销</span></a></li><li class="nav-item d-flex align-items-center"><a href="{% url 'password_change' %}" class="nav-link text-white font-weight-bold px-0"><span class="d-sm-inline d-none">修改密码</span></a></li>{% endif %}{% else %}<li class="nav-item d-flex align-items-center"><a href="{% url 'login' %}" class="nav-link text-white font-weight-bold px-0"><i class="fa fa-user me-sm-1"></i><span class="d-sm-inline d-none">登录</span></a></li>{% endif %}<li class="nav-item d-xl-none ps-3 d-flex align-items-center"><a href="javascript:;" class="nav-link text-white p-0" id="iconNavbarSidenav"><div class="sidenav-toggler-inner"><i class="sidenav-toggler-line bg-white"></i><i class="sidenav-toggler-line bg-white"></i><i class="sidenav-toggler-line bg-white"></i></div></a></li>{#页面配置开始#}<li class="nav-item px-3 d-flex align-items-center"><a href="javascript:;" class="nav-link text-white p-0"><i class="fa fa-cog fixed-plugin-button-nav cursor-pointer"></i></a></li>{#页面配置结束#}{#通知列表开始#}<li class="nav-item dropdown pe-2 d-flex align-items-center"><a href="javascript:;" class="nav-link text-white p-0" id="dropdownMenuButton"data-bs-toggle="dropdown" aria-expanded="false"><i class="fa fa-bell cursor-pointer"></i></a><ul class="dropdown-menu  dropdown-menu-end  px-2 py-3 me-sm-n4"aria-labelledby="dropdownMenuButton"><li class="mb-2"><a class="dropdown-item border-radius-md" href="javascript:;"><div class="d-flex py-1"><div class="my-auto"><img src="{% static 'img/team-2.jpg' %}" class="avatar avatar-sm  me-3 "></div><div class="d-flex flex-column justify-content-center"><h6 class="text-sm font-weight-normal mb-1"><span class="font-weight-bold">New message</span> from Laur</h6><p class="text-xs text-secondary mb-0"><i class="fa fa-clock me-1"></i>13 minutes ago</p></div></div></a></li><li class="mb-2"><a class="dropdown-item border-radius-md" href="javascript:;"><div class="d-flex py-1"><div class="my-auto"><img src="{% static 'img/small-logos/logo-spotify.svg' %}"class="avatar avatar-sm bg-gradient-dark  me-3 "></div><div class="d-flex flex-column justify-content-center"><h6 class="text-sm font-weight-normal mb-1"><span class="font-weight-bold">New album</span> by Travis Scott</h6><p class="text-xs text-secondary mb-0"><i class="fa fa-clock me-1"></i>1 day</p></div></div></a></li><li><a class="dropdown-item border-radius-md" href="javascript:;"><div class="d-flex py-1"><div class="avatar avatar-sm bg-gradient-secondary  me-3  my-auto"><svg width="12px" height="12px" viewBox="0 0 43 36" version="1.1"xmlns="http://www.w3.org/2000/svg"xmlns:xlink="http://www.w3.org/1999/xlink"><title>credit-card</title><g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g transform="translate(-2169.000000, -745.000000)" fill="#FFFFFF"fill-rule="nonzero"><g transform="translate(1716.000000, 291.000000)"><g transform="translate(453.000000, 454.000000)"><path class="color-background"d="M43,10.7482083 L43,3.58333333 C43,1.60354167 41.3964583,0 39.4166667,0 L3.58333333,0 C1.60354167,0 0,1.60354167 0,3.58333333 L0,10.7482083 L43,10.7482083 Z"opacity="0.593633743"></path><path class="color-background"d="M0,16.125 L0,32.25 C0,34.2297917 1.60354167,35.8333333 3.58333333,35.8333333 L39.4166667,35.8333333 C41.3964583,35.8333333 43,34.2297917 43,32.25 L43,16.125 L0,16.125 Z M19.7083333,26.875 L7.16666667,26.875 L7.16666667,23.2916667 L19.7083333,23.2916667 L19.7083333,26.875 Z M35.8333333,26.875 L28.6666667,26.875 L28.6666667,23.2916667 L35.8333333,23.2916667 L35.8333333,26.875 Z"></path></g></g></g></g></svg></div><div class="d-flex flex-column justify-content-center"><h6 class="text-sm font-weight-normal mb-1">Payment successfully completed</h6><p class="text-xs text-secondary mb-0"><i class="fa fa-clock me-1"></i>2 days</p></div></div></a></li></ul></li>{#通知列表结束#}</ul></div></div>
</nav>
<!-- End Navbar -->

效果预览:
在这里插入图片描述

总结

今天的代码实战就到这里了,如果大家需要源代码,欢迎私信或者留言。
Django零基础全栈班已正式开课,欢迎想学习Django的同学报名学习。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/599833.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

es6新增set、map两种数据结构(超级详细-附加代码)

文章目录 一、Set增删改查add()delete()has()clear()遍历 二、Map增删改查sizeset()get()has()delete()clear()遍历 三、WeakSet 和 WeakMapWeakSetWeakMap 参考文献 如果要用一句来描述&#xff0c;我们可以说 Set是一种叫做集合的数据结构&#xff0c;Map是一种叫做字典的数…

wheeltec轮趣ROS教育机器人的网络连接

一、术语解析 宿主机&#xff1a;宿主机是指物理主机&#xff0c;比如用于开发测试的笔记本电脑和台式机电脑。 虚拟机&#xff1a;虚拟机是指安装在宿主机的VMware&#xff0c;推荐在宿主机上安装虚拟机&#xff0c;官方提供虚拟机的镜像以及配套的开发环境。 ROS主机&…

内容创作策略:打造影响力强大的技术博客

CSDN的朋友你们好&#xff0c;我是未来&#xff0c;今天给大家带来专栏【程序员博主教程&#xff08;完全指南&#xff09;】的第6篇文章——“博客内容创作策略”。本文为技术博主提供了一个精简的内容创作策略指南&#xff0c;涵盖了设定目标、分析竞争、关键词研究、内容规划…

Vue中的键盘事件

目 录 1. 概述 2. JavaScript 键盘事件 2.1 键盘事件类型 2.1.1 keydown 事件2.1.2 keypress 事件2.1.3 keyup 事件2.1.4 input 事件 2.2 键盘事件的响应顺序 3. Vue 键盘事件监听与处理 3.1 获取按键的 键码&#xff08;keyCode&#xff09;3.2 监听按键事件 4. Vue 按键…

基于单片机交流电参数测试仪系统设计

**单片机设计介绍&#xff0c;基于单片机交流电参数测试仪系统设计 文章目录 一 概要二、功能设计三、 软件设计原理图 五、 程序六、 文章目录 一 概要 &emsp&#xff1b;基于单片机交流电参数测试仪系统设计的概要主要涵盖了系统的整体架构、功能实现、硬件组成以及软件…

【Kaggle】练习赛《鲍鱼年龄预测》(下)

前言 上一篇讲解《鲍鱼年龄预测》的数据分析和可视化一些操作&#xff0c;对不同的四个模型产生了Baseline。本文在这个基础上做优化。 【Kaggle】练习赛《鲍鱼年龄预测》(上) 加载库 (略)以参考上篇 加载数据 # 加载所有数据 train pd.read_csv(os.path.join(FILE_PATH,…

嵌入式Linux驱动开发——汇编点灯

嵌入式Linux驱动开发——汇编点灯 本文章开始记录学习嵌入式Linux的过程&#xff0c;使用的开发板是正点原子的阿尔法&#xff0c;以及左老师的书籍和视频。然后这个系列不会介绍基础知识&#xff08;书上都有&#xff09;&#xff0c;主要是记录思考过程以及需要注意的点。 代…

【C++】继承总结

一、前言 我们众所周知的C三大特性分别为&#xff1a;封装、继承、多态。 封装就是将接口实现统一化&#xff0c;隐藏那些不同的地方&#xff0c;在上层函数调用体现的方式一样&#xff0c;如各种容器的迭代器iterator&#xff0c;尽管底层实现的方式不同&#xff0c;但是在使用…

rsync 远程同步 基础介绍

目录 一 Rsync 简介 1&#xff0c;rsync 是什么 2&#xff0c;rsync 中的发起端 同步源 3&#xff0c;同步方式 4&#xff0c;备份的方式 5&#xff0c;常用Rsync命令 6&#xff0c; 配置源的两种表达方法 7&#xff0c;rsync做本地复制时与cp 对比 二&#xff…

递归学习第一个课

一、递归定义 基本定义 函数自己调用自己&#xff08;通俗第一印象&#xff09;大问题可以拆分小问题&#xff08;拆分&#xff0c;边界&#xff09;大问题与小问题的关系&#xff08;递归关系&#xff09; 为什么拆分小问题&#xff1f; 小问题更容易求解大问题与小问题内部…

qt自定义窗口在拖动过程中出现抖动且拖动后位置看上去不对

自定义窗口拖动 引言开发环境关键性代码运行结果原因分析改进代码运行结果globalPos()globalPosition()再次修改代码运行结果区别 引言 本文旨在一个问题的记录&#xff1a;自定义窗口拖动的过程中&#xff0c;窗口不能很好的跟随鼠标移动&#xff0c;此外会出现窗口拖动时抖动…

day03 51单片机

51单片机学习 1 模块化编程 1.1 什么是模块化编程 随着我们的代码越来越复杂,我们的main.c越来越长,阅读性也越来越差。如果将来开始做项目,我们可能要同时操作好几个模块,这种情况下我们无法再把代码写到同一个文件,而是要分模块管理代码。 具体实现方法,就是将源码…