• Django day1


    在windows下可以直接的创建django项目
    但是需要把自动生成的templates和setting里面的DIRS里面字段删除(templates自动生成的可以删不删都行,我是看视频那个老师删了,但是setting DIRS里面的字段需要删,至于具体为啥我已经忘了)
    自动生成的 Setting中的DIR字段代表优先去项目中根目录templates去寻找,然后再去app目录下templates找,删除后就直接去app目录下的templates找
    在这里插入图片描述
    然后django里面的功能都在app里面写,可以在terminal下面执行命令生成app,但是要注意在那个目录下生成,是在根目录下
    在这里插入图片描述
    app01生成后要注册到url里边,要在setting里面注册进去才能用(就是这么要求的)
    在这里插入图片描述
    在这里插入图片描述
    这样点http://127.0.0.1:8000/就可以启动成功了(成功的页面网上好多都有就不再贴了)
    在这里插入图片描述
    然后写一些简单的东西(就是在那写东西)
    第一步
    在这里插入图片描述
    第二步
    在这里插入图片描述
    然后运行本来是跳转到这的
    在这里插入图片描述
    但你的url应该是下面再输一下就可以跳转了
    在这里插入图片描述
    在urls里写,views里写(按照我的理解)
    在这里插入图片描述
    templates(就是存放模板的,然后就是一些html文件,目前看到的放进去的都是html文件,为啥把本来的删了,这个是放在app里面的)
    还在app里面建了静态文件,然后static就是存放(js,css,img,plugins)的 把他们建好
    在这里插入图片描述
    django静态文件怎么在html文件中用
    这个地方其实不太明白,前面前端的地方没听,后面补吧(载入的文件是我里面有的)
    在这里插入图片描述
    一个小的案例:去联通上把新闻爬出来,然后显示,可以学到 django中html里面怎么用占位符(就是python中输入输出那中),然后django里面怎么请求的,怎么返回的。

    步骤1 在urls里写进去
    在这里插入图片描述
    步骤二
    在这里插入图片描述
    步骤三
    在这里插入图片描述
    我在敲这个的时候,在view里写的是news_list,但是在html里写成了new_list结果一直获取不到结果,弄了好半天。

    最后运行成功的结果图应该是这样的
    在这里插入图片描述
    三种请求和三种响应方式
    在这里插入图片描述
    案例二:用户登录
    一定要知道django中提交表单时要加验证就ok了
    步骤1
    在这里插入图片描述
    步骤二
    在这里插入图片描述
    步骤三
    在这里插入图片描述
    django数据库操作
    setting中原本是这样
    在这里插入图片描述

    用mysql就修改成这样(数据库是自己要在mysql中建好的)
    在这里插入图片描述
    操作数据库前需要装pip install mysqlclient 第三方模块
    然后 在django中创集表可以在models里面写
    在这里插入图片描述
    例如这样这样
    在这里插入图片描述
    新建完执行这两个命令才能成功生成
    在这里插入图片描述
    这时候看数据库已经有了创建的表
    在这里插入图片描述
    表中新增列时,由于已存在列中可能已有数据,所以新增列必须要指定新增列对应的数据
    1.可以手动输入值,也可以设置默认值age=models.IntegerFiled(default=2) ,也可以在新增的的时候设置允许为空 data=models.IntegerField(null=True,blank=True)
    django中对表进行增删改查

    def orm(request):
        # 插入数据
        # Department.objects.create(title='销售部')
        # Department.objects.create(title='IT部')
        # Department.objects.create(title='运营部')
        #
        # Userinfo.objects.create(name='吴佩琪', password='123', age=19)
        # Userinfo.objects.create(name='初中空', password='456', age=90)
        # Userinfo.objects.create(name='可乐', password='567', age=19)
    
        ###1删除数据###
        # Userinfo.objects.filter(id=3).delete()
        # Department.objects.filter().all()
        ###2获取数据###
        # data_list=[对象,对象,对象]每个对象放的是一行数据QuerySet类型
        data_list = Userinfo.objects.all()
        for obj in data_list:
            print(obj.id, obj.name, obj.age)
        data_list = Userinfo.objects.filter(id=1)
        print(data_list)
        for obj in data_list:
            print(obj.id,obj.age)
        row_obj = Userinfo.objects.filter(id=1).first()
        print(row_obj.id, row_obj.name, row_obj.password, row_obj.age)
        # return HttpResponse('成功')
        ####3更新数据###
        Userinfo.objects.all().update(password=999)
        Userinfo.objects.filter(id=2).update(age=99)
        Userinfo.objects.filter(name='吴佩琪').update(age=999)
        return HttpResponse('成功')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30

    案例:用户管理
    用户列表展示页面
    1 url
    在这里插入图片描述
    2 函数
    在这里插入图片描述
    3 html页面

    DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Titletitle>
    head>
    <body>
    <h1>INFO列表h1>
    <a href="/info/add/">添加a>
    <table border="1">
        <thead>
            <tr>
                <th>IDth>
                <th>姓名th>
                <th>密码th>
                <th>年龄th>
                <th>操作th>
            tr>
        thead>
        <tbody>
             {% for obj in data_list %}
            <tr>
                <td>{{ obj.id }}td>
                <td>{{ obj.name }}td>
                <td>{{ obj.password }}td>
                <td>{{ obj.age }}td>
                <td>
                    <a href="/info/delete/?nid={{ obj.id }}">删除a>
                td>
            tr>
        {% endfor %}
    
        tbody>
    table>
    body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36

    2 添加用户
    1url
    在这里插入图片描述
    2 函数
    在这里插入图片描述

    3 html
    在这里插入图片描述
    删除用户
    url
    在这里插入图片描述

    函数
    在这里插入图片描述
    html
    在这里插入图片描述

  • 相关阅读:
    【mcuclub】温度传感器DS18B20
    OkHttp搞定Http请求
    7 天找个 Go 工作,Gopher 要学的条件语句,循环语句 ,第3篇
    数据湖(十二):Spark3.1.2与Iceberg0.12.1整合
    洛谷P1058 立体图
    旅游网站毕业设计,旅游网站网页设计设计源码,旅游网站设计毕业论文
    第2章 数据结构中栈与队列的概念
    MAX98390CEWX D类放大器,集成动态扬声器管理(MAX98390)
    超声波清洗机频率如何选择?高频和低频有什么区别
    java毕业设计云音乐后端内容管理系统Mybatis+系统+数据库+调试部署
  • 原文地址:https://blog.csdn.net/rainturbons/article/details/127983704