IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Django simpleui新手实战web平台开发 -> 正文阅读

[Python知识库]Django simpleui新手实战web平台开发

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

本次使用Django simple ui 进行了简易的界面,使用h5的基本功能,比传统的qt和tk更加方便使用,界面更加符合审美。通过Django的框架实现简易的web平台开发。

代码分类

良好的代码要进行分类,一是方便维护,二是减少代码在一个文件里面太多,看得眼花再基于Django框架的基础上,新建一个写功能函数的文件夹和一个config配置文件。调用的时候引用报名中的函数|类即可。

安装环境

     pip install django
     pip install django-simpleui

安装完后:在python的script安装目录下找到 django-admin.exe 的路径,将他放到系统环境变量中。并在cmd中运行django-admin查看是否运行成功。

在这里插入图片描述
接下啦开始正式创建工程啦

创建工程

创建工程的命令为:django-admin startproject 工程名称
在cmd中创建名为demo的项目:

django-admin startprojec demo

可以在文件夹下生产如下文件
在这里插入图片描述
demo文件夹下
在这里插入图片描述
创建好项目之后,进入项目路径下也就是有manage.py的目录下,打开cmd,输入如下代码
接下来我们要创建一个应用

python manage.py startapp 应用的名称

创建好后会出现你应用名称的文件夹
在这里插入图片描述
其内容如下;
在这里插入图片描述

运行项目

此时可以运行项目了,在有manage.py的目录下,cmd或者终端运行

python manage.py runserver

结果如下:
在这里插入图片描述
项目运行成功了,但是没有加上自己的东西,那么你得了解一下Django的框架。这个网上找找。。

修改框架内容

我主要理解的是:你需要修改urls里面的路由,就可以让浏览器访问到你的网页,在view文件可以与网页进行交互。界面主要是由前端控制的,所以你需要创建html文件,html的管理放在自己创建的文件夹templaces下

在urls.py文件中将你的html和view中的函数进行路由。
因此你首先要创建创建一个与你的app文件夹同级下创建templaces文件夹。然后新建你的html文件,例如index.html
在这里插入图片描述
在settings中设置好路径,不然访问不到:
在这里插入图片描述

html内容中需要注意两个点

1.{% csrf_token %}一定要加上这个
2.action=“/index/” index为你的html文件名
3.html中如文本框的name=“btm”这个名字,可以在views中通过get方法获取该组件的内容

需要了解Django的html的写法可参考:html网页调用+模板语法+静态文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>测试</title>
</head>
<body>
    <h1>按钮功能:</h1>
    <form action="/index/" method="post">
        {% csrf_token %}   <!--加入这行 -->
        输入:<input type="text" name="btm" /><br />    
        <input type="submit" value="提交" />
    </form>
</body>
</html>

然后在你的demo_app的view中新建一个函数:
说明:
1.参数request是必要的,不可以省略
2.其实if 条件可以不需要也可以接受到前端的消息
3.使用request.POST.get(“html的组件的名字”) 获取POST请求的内容
4.使用return render()返回你的网页和参数(想要将参数传给html显示,需要将返回参数使用{}字典格式进行返回)
5.如果需要后端处理前端显示,建议新建一个api的文件夹,在里面写好功能,在view里面调用即可,这样可以减少view中的代码。也方便管理

注:假如你运行项目显示了别的网页,就要看你的函数是否返回了这个网页。

from django.shortcuts import render
def index(request):
    btm_list = []
    if request.method == 'POST':
        btm = request.POST.get('btm')
        btm_list.append(btm)
    return render(request, 'index.html', {'btm': btm_list})

接下来修改urls.py文件,将网页与地址绑定起来。第一个为你需要路由的html的名称,第二个为views.py文件下的函数,每增加一个html都需要配置一下urls
记得将导入views文件导入
在这里插入图片描述
最后运行:

python manage.py runserver 你的ip:8000

网页中输入ip:8000/index 就可以访问你的html了。

前端页面的显示依赖于html的设计,作为非专业人士的我,决定白嫖现成的东西,于是我使用了simpleui这个库
首先先安装

参考文章:Django SimpleUI打造美丽后台

 pip install django-simpleui

修改settings.py文件

simpleui在项目中的settings.py文件中配置

INSTALLED_APPS = [
    'simpleui',    加上这个
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': str(BASE_DIR / 'db.sqlite3'),
        'DIRS': [BASE_DIR/'templates'],     # settings.py文件的问题     正确做法

    }
}
# 允许所有人访问
ALLOWED_HOSTS = ['*']

测试是否安装成功
使用python manage.py runserver命令启动本地测试服务器, 访问/admin/, 如果你能看到如下页面说明安装成功。
在这里插入图片描述

登入需要账号:账号那里来?
你需要执行如下命令:

python manage.py makemigrations   
python manage.py migrate          
python manage.py createsuperuser    需要你注册的账号和密码

此时登入应该可以登入用户了
一开始的界面只有
在这里插入图片描述
需要修改settings问价中的配置进行菜单选项的添加和修改

# 自定义菜单
SIMPLEUI_CONFIG = {
    # 是否使用系统默认菜单,自定义菜单时建议关闭。
    'system_keep': False,
    # 用于菜单排序和过滤, 不填此字段为默认排序和全部显示。空列表[] 为全部不显示.
    'menu_display': ['权限认证'],   # 只会显示权限认证这个菜单  如果去掉那么都显示
    # 设置是否开启动态菜单, 默认为False. 如果开启, 则会在每次用户登陆时刷新展示菜单内容。
    # 一般建议关闭。
    'dynamic': False,
    'menus': [
        {
            'app': 'auth',
            'name': '权限认证', #父级菜单
            'icon': 'fas fa-user-shield',
            'models': [
                {
                    'name': '管理用户列表',                  # 子菜单   需要的时候自己添加字典格式就好
                    'icon': 'fa fa-user-secret',
                    'url': 'auth/user/'           # 你的网页比如/index
                },
                {
                    'name': '用户组',
                    'icon': 'fa fa-th-list',
                    'url': 'auth/group/'
                }
            ]
        },
     
    ]

结束语

写到这里已经完成了本次项目的一些基本流程。每次添加东西只需要几个步骤:
1.在settings添加菜单栏和子菜单,修改url地址
2.在urls.py中执行url的地址和view.py的函数
3.新建html文件
4.在views.py文件中书写函数,render返回的参数也是该html文件

参考引用

django-simpleui搭建完全讲解
html网页调用+模板语法+静态文件
手把手教你配置Django SimpleUI打造美丽后台

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-10-31 11:52:05  更:2022-10-31 11:56:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/26 2:49:51-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计