教你用Django将前端的数据存入Mysql数据库

 更新时间:2021年11月05日 11:45:57   作者:Spring� 胡  
这篇文章主要给大家介绍了关于如何用Django将前端的数据存入Mysql数据库的相关资料,文中通过图文以及示例代码介绍的非常详细,对大家学习或者使用Django具有一定的参考学习价值,需要的朋友可以参考下

1.在app下的models.py中创建新的模板


具体代码如下:

class Apply(models.Model):
    clas = models.CharField(max_length=32, verbose_name="班级")
    name = models.CharField(max_length=32, verbose_name="姓名")
    number = models.CharField(max_length=15, verbose_name="学号")
    email = models.CharField(max_length=32, verbose_name="邮箱")
    phone = models.CharField(max_length=11, verbose_name="手机号")
    zhiyuan1 = models.EmailField(max_length=32, verbose_name="志愿一")
    zhiyuan2 = models.EmailField(max_length=32, verbose_name="志愿二")

Apply类下的clas,name这些通过数据迁移会变成mysql数据库中的列表名

2.数据迁移(用pycharm自带的Terminal工具即可)

python manage.py makemigrations finalapp
python manage.py migrate finalapp

finalapp是我app的名字,大家数据迁移的时候记得换成自己app的名字

下面是我数据迁移之后的mysql数据库,可以看到finalapp_apply表已经创建成功,双击点开就可以查看表,新创建的表是什么数据都没有的,图中的是我的前端通过form表单提交到数据库的


3.在app下的views.py中创建新的视图


具体代码如下:

def apply(request):
    if request.method == "POST":  # 判断请求为POST请求则是提交表单
        apply = Apply()  # 创建一个apply实例
        clas = request.POST.get("clas")  # 获取提交表单中的clas值,赋值给clas
        name = request.POST.get("name")  # 获取提交表单中的name值,赋值给变量name
        number = request.POST.get("number")
        email = request.POST.get("email")
        phone = request.POST.get("phone")
        zhiyuan1 = request.POST.get("zhiyuan1")
        zhiyuan2 = request.POST.get("zhiyuan2")
        apply.clas = clas #给实例赋值
        apply.name = name
        apply.number = number
        apply.email = email
        apply.phone = phone
        apply.zhiyuan1 = zhiyuan1
        apply.zhiyuan2 = zhiyuan2
        apply.save()  # 保存实例,把数据存到数据库
        return render(request, 'applysuccessful.html') #数据保存之后,从apply网页跳转到成功的页面
    else:
        return render(request, 'apply.html') #没有数据的时候,跳转到apply网页

4.前端


具体代码如下:

<form action="/apply/" method="post" style="padding-top: 30px">
            {% csrf_token %}
            <p>
                <label>班&emsp;级:<input type="text" name="clas"></label>
            </p>
            <p>
                <label>姓&emsp;名:<input type="text" name="name"></label>
            </p>
            <p>
                <label>学&emsp;号:<input type="text" name="number"></label>
            </p>
            <p>
                <label>邮&emsp;箱:<input type="text" name="email"></label>
            </p>

            <p>
                <label>手机号:<input type="text" name="phone"></label>
            </p>
            <p>
                <label>志愿一:<input type="text" name="zhiyuan1"></label>
            </p>
            <p>
                <label>志愿二:<input type="text" name="zhiyuan2"></label>
            </p>
            <input type="submit" value="提交">
        </form>

form表单必须写 action 属性,它规定当提交表单时,向何处发送表单数据。

{%csrf_token%}:在Django中我们需要在templates的form中加入{%csrf_token%}这串内容,它的作用是当我们get表单页面时,服务器返回页面的同时也会向前端返回一串随机字符,post提交时服务器会验证这串字符来确保用户是在服务端返回的表单页面中提交的数据,防止有人通过例如jquery脚本向某个url不断提交数据,是一种数据提交的验证机制。

5.效果



可以看到前端提交的数据已经存入到数据库中

希望这篇文章可以帮助到你!!!

相关文章

  • python+OpenCV实现车牌号码识别

    python+OpenCV实现车牌号码识别

    这篇文章主要介绍了python+OpenCV实现车牌号码识别,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • Python实现过迷宫小游戏示例详解

    Python实现过迷宫小游戏示例详解

    这篇文章主要介绍的是基于Python实现一个简单的过迷宫小游戏,文中的示例代码讲解详细,对我们学习Python有一定的帮助,感兴趣的可以学习一下
    2021-12-12
  • 浅析Python的Django框架中的Memcached

    浅析Python的Django框架中的Memcached

    这篇文章主要介绍了浅析Python的Django框架中的缓存机制,其中着重讲到了Memcached,需要的朋友可以参考下
    2015-07-07
  • Python pandas.replace的用法详解

    Python pandas.replace的用法详解

    在处理数据的时候,很多时候会遇到批量替换的情况,如果一个一个去修改效率过低,也容易出错,replace()是很好的方法,下面这篇文章主要给大家介绍了关于Python pandas.replace用法的相关资料,需要的朋友可以参考下
    2022-06-06
  • python“静态”变量、实例变量与本地变量的声明示例

    python“静态”变量、实例变量与本地变量的声明示例

    这篇文章主要给大家介绍了关于python“静态”变量、实例变量与本地变量的声明的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 用Python实现职工信息管理系统

    用Python实现职工信息管理系统

    这篇文章主要介绍了用Python实现职工信息管理系统,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • 详解将Python程序(.py)转换为Windows可执行文件(.exe)

    详解将Python程序(.py)转换为Windows可执行文件(.exe)

    这篇文章主要介绍了详解将Python程序(.py)转换为Windows可执行文件(.exe),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-07-07
  • Python通过kerberos安全认证操作kafka方式

    Python通过kerberos安全认证操作kafka方式

    这篇文章主要介绍了Python通过kerberos安全认证操作kafka方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python3操作Excel文件(读写)的简单实例

    Python3操作Excel文件(读写)的简单实例

    这篇文章主要给大家介绍了关于Python3操作Excel文件(读写)的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Python3具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • Django中使用CORS实现跨域请求过程解析

    Django中使用CORS实现跨域请求过程解析

    这篇文章主要介绍了Django中使用CORS实现跨域请求过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08

最新评论