zoukankan      html  css  js  c++  java
  • django ORM入门

    简单总结一下迟老师今天下午上课时讲的ORM操作

                                        目录:

                                      一、首先配置django连接mysql数据库

                                                二、在自己创建的app中添加一个model

                                                三、利用django生成表

                                                四、利用model进行增删改查的操作

                                                五、作业

    一、首先配置django连接mysql数据库

                                      

    在项目(projet)的setting中进行设置。比如我的项目叫做myApp,打开

    myApp/myApp/setting.py

    找到下面这段代码,进行配置:

                                                  

    代码在这:

    # Database
    # https://docs.djangoproject.com/en/2.0/ref/settings/#databases
    
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',#数据库引擎
            'NAME': 'aisystem',#已经建好的数据库名
            'USER':'root',#连接mysql的用户名
            'PASSWORD':'1234',#连接密码
            'HOST':'127.0.0.1',#设置localhost,如果不是远程的数据库都是这个
            'PORT':3306#在安装mysql的时候设置的端口,没有修改的默认都是3306
        }
    }
    mysql配置

    二、在自己创建的app中添加一个model

    比如我添加的app叫做 userManage,所以在这里添加一个model:

                                                      

    打开 myApp/myApp/userManage/models.py,添加一个model:

    代码在这里:

    class TUser(models.Model):
        #主键
        userId = models.AutoField(primary_key=True,unique=True)#自增 唯一
        #用户名
        username=models.CharField(max_length=50)
        #密码
        password=models.CharField(max_length=50)
    TUser

    三、利用django生成表

    首先执行:

    python manage.py makemigrations

    可以看到创建TUser成功:

                                  

    这时候项目目录中应该生成一个叫做migrations的文件夹

                                                                                         

    然后写入数据库,执行命令:

    python manage.py migrate

    出现很多ok,我的由于不是第一次写入数据库,所有只有几个

                                                                     

    在数据库中可以看到一个叫做tuser的表

                                                                

    四、利用model进行增删改查的操作

    首先在数据库中增加两条数据备用:

                                                        

               4.1 实现登陆验证

                         我们修改login中的代码,实现登陆验证,如果用户名、密码匹配则跳转到首页。否则重新登陆 

                          

                          然后我们开启服务器:

    python manage.py runserver

                        打开登陆页:127.0.0.1:8080/user/login。登陆一下

                                                                

       

                          当输入正确的用户名、密码是,跳转到127.0.0.1/user/index,显示欢迎

                                                                         

                     当输入错误的用户名或密码,提示错误

                                                                  

                4.2操作数据库

                      为了说明model的用法,我们不考虑逻辑。直接在userManage中增加一个/test,说明一下model的其他常用函数。

                       首先在userManage/urls中增加一个映射:

    path('test/',views.test)

                       然后再userMange/views中增加一个test方法,直接返回一个渲染的模板。

                      

                     再在userManage/templates中新建一个名为test.html的文件。

         

                     接下来我们慢慢修改这些内容

                      4.2.1查询数据库中全部内容

                            修改 userManage/videws.py的test方法:

                             

                           通过  objects.all方法读取一个表中的全部内容,通过render把参数传递给test.html

                           然后修改test.html,显示users的内容。

                               

                        打开test查看一下效果 

                       

                  4.2.2增加一条记录

                     修改test方法 

                     

                           自己打开test查看结果吧。然后到数据库中可以看到确实增加了一条记录。

                       4.2.3删除一条记录

                           

                           访问test将会删除admin用户

                       4.2.4修改一条记录

                           

                                  可以到数据库或者登陆页面验证小明的密码被修改为2了

            这样增删改查的内容就全部介绍完了。当然这只是一种实现方式。还有其它的实现方法,包括但不限于执行sql语句。留给大家自己探索了。

    五、作业

                   给大家重复一下作业:

                                     时间:4月15日-5月5日。

                                    作业内容:实现一个web端文章的管理系统,可以对文章进行增、删、改、查、保存。

                                    检查方式:5月5日课上检查完成情况。

                                    完不成会怎样:我也不知道。但是相信大家经过两天的学习,应该没问题的。实在写不完又被检查到了的话,表演个小节目吧。所以要么抽空写一下作业,要么抽空练练技能。

  • 相关阅读:
    《C# to IL》第一章 IL入门
    multiple users to one ec2 instance setup
    Route53 health check与 Cloudwatch alarm 没法绑定
    rsync aws ec2 pem
    通过jvm 查看死锁
    wait, notify 使用清晰讲解
    for aws associate exam
    docker 容器不能联网
    本地运行aws lambda credential 配置 (missing credential config error)
    Cannot connect to the Docker daemon. Is 'docker daemon' running on this host?
  • 原文地址:https://www.cnblogs.com/superxuezhazha/p/8850019.html
Copyright © 2011-2022 走看看