码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Django使用mysqlclient服务连接并写入数据库


    Django使用mysqlclient服务连接并写入数据库


    文章目录

    • Django使用mysqlclient服务连接并写入数据库
    • 准备
    • 一、安装mysqlclient服务
    • 二、settings.py文件
    • 三.配置urls.py文件
    • 四.配置models.py模型类
    • 五.配置views.py视图类文件
    • 六.在template中编辑HTML页面[比较简易]
    • 七.创建并执行可迁移文件[做过的请省略这一步]
    • 八.效果
    • 九.小结


    准备

    1.创建Django程序,安装Django服务(详情请看上上节)
    2.创建子应用(详情请看上上节)
    3.连接数据库服务,创建一个新的数据库,使用旧的数据也可以.


    一、安装mysqlclient服务

    在Terminal控制台输入:

    pip install mysqlclient==2.0
    后面是版本号,可写可不写

    二、settings.py文件

    1.将子应用写入

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'stu'# 创建的子应用名称
    ]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    2.配置数据库

    DATABASES = {
        'default': {
            # 连接本地mysql数据库
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'student',# 数据库名
            'USER': 'root',# 用户名
            'PASSWORD': 'root',# 密码
            'HOST': 'localhost',# 本地ip
            'PORT': 3306,# 端口号
    
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    三.配置urls.py文件

    1.初始化应用下的urls.py文件

    from django.contrib import admin
    from django.urls import path, include
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('stu/', include('stu.urls'))# 接入子应用
    ]
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    2.子应用下的urls.py文件

    from django.urls import path
    
    from stu import views
    
    urlpatterns = [
        path('gosigt/', views.gosigt),# 路径
        path('insigt/', views.insigt),# 路径
    ]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    四.配置models.py模型类

    from django.db import models
    
    class Stu(models.Model):
    	# 表内的列名:
        sname=models.CharField(max_length=10)
        spwd=models.CharField(max_length=10)
        # 给字表编辑名称
        class Meta:
            db_table='stu'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    五.配置views.py视图类文件

    from django.http import HttpResponse
    from django.shortcuts import render
    from stu.models import Stu
    
    def gosigt(request):
        return render(request,'sigt.html')
    
    def insigt(request):
        sname=request.POST.get('sname')# 获取表单内容
        spwd=request.POST.get('spwd')
        if(sname!="" and spwd!=""):
        	# .save()将数据写入数据库
            Stu(sname=sname, spwd=spwd).save()
            return HttpResponse('<h1>注册成功!</h1>')
        return HttpResponse('<h1>注册失败!</h1>')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    六.在template中编辑HTML页面[比较简易]

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>注册</title>
    </head>
    <body>
        <form method="post" action="/stu/insigt/">
        /*post方法需要写下面这一段代码*/
            {% csrf_token %}
            用户名:<input type="text" name="sname"><br/>
            密&emsp;码:<input type="password" name="spwd"><br/>
            <input type="submit" value="注册">
        </form>
    </body>
    </html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    七.创建并执行可迁移文件[做过的请省略这一步]

    在Terminal控制台输入:

    创建迁移文件:python manage.py makemigrations
    执行迁移文件:python manage.py migrate stu
    执行迁移文件后面的stu是我子应用的名称


    八.效果

    在这里插入图片描述

    九.小结

    本章概述了在Django框架中使用mysqlclient服务实现连接并写入数据库的操作,内容都是干货,需要熟悉使用.
    有哪里不足或者有更好的建议,欢迎留言吐槽,有哪里不懂的小伙伴,可以私信我,我会一一答复,感谢认可,感谢支持!

  • 相关阅读:
    SpringCloudAlibaba系列之Nacos配置管理
    爱了爱了,这是什么神仙级Apache Dubbo实战资料,清晰 齐全 已跪
    PHP中流的理解
    DVWA靶场在sql注入联合查询时返回报错信息 “Illegal mix of collations for operation ‘UNION’ ”之解决
    【NodeJs-5天学习】第四天存储篇⑤ ——PM2,node.js应用进程管理器
    leetcode 131. 分割回文串
    java源码-工程讲解
    如何进行并发编程和线程同步?
    Netty(二)- NIO三大组件之Buffer
    RabbitMQ消息中间件
  • 原文地址:https://blog.csdn.net/weixin_45539338/article/details/125565372
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号