首页 > 代码库 > Django框架

Django框架

一、初识django:

      django是一门开放源代码的,由Python编译而成的一款web框架,它的模式是MTV(models templates views),使用框架的好处在于,里面有好多集成好的东西,我们可以直接拿过来使用。下面我们直接看如何创建以及使用django:

       1、需要先安装django模块,pip3 install django

       2、接下来就是创建一个django项目,可以直接在pycharm中选择‘file-->new progect‘中选择创建django项目,也可以使用命令去创建:django-admin.py startproject mysite,这样就会创建一个叫mysite的django项目。

       3、创建APP:

                  cd mysite ==》 python3 manage.py startapp cmdb

       4、连接数据库
               在连接数据库之前需要先注册APP,注册app是在settings文件中配置上APP的名称就可以。
               执行命令需要创建数据库:
                     python3 manage.py makemigrations
                     python3 manage.py migrate

       5、几个重要的文件:

               settings: 配置文件

               urls: 路由系统

               manage.py     #django程序启动文件

               models: 创建数据库表的文件

               views: 处理用户请求的问题

二、使用一个小例子,来说明django:

          在你创建的mysite项目下面会有一个templates目录,它下面主要放置的是接收用户输入的HTML文件,下面通过几步来阐明一下如果使用django来完成一个简单的操作:

          1、首先让我们先在models里面写类生成表:

from django.db import models
#这里创建的类就是表名,其实UserInfo就是Model的子类,里面的对象就是字段

#字段的类型是string类型,最大的长度是32
class
UserInfo(models.Model): user = models.CharField(max_length=32) passwd = models.CharField(max_length=32)

          2、其次在templates目录下创建一个index.html文件,文件内容如下:   

 1  <div> 2         <p>用户名:<input type="text" id="username"/></p> 3     </div> 4     <div> 5         <p>密码:<input type="password" id="pwd"/></p> 6     </div> 7     <input type="button" id=‘login‘ value="login" onclick="SubmitLogin();"/> 8  9     <script src="/fff/jquery-1.8.2.min.js"></script>10     <script>11         function SubmitLogin(){12             $.ajax({13                 url: /web/ajax/,14                 type: POST,15                 data: {user: $(#username).val(),pwd: $(#pwd).val(),val:$(#login).val()},16                 dataType: json,17                 success: function(data){18                     if(data.status){19                         location.href=/web/userinfo/;20                     }else{21                         alert(data.message);22                     }23                 }24             })25         }26     </script>

               需要注意的是:我这里直接使用的ajax来进行发送请求,其实还有一种方式就是我在input标签中创建一个name属性,然后在views文件中去调用这个name属性的值,那么还是使用ajax比较简洁易懂,里面的内容先不看,ajax就是把用户名和密码通过字典的方式传送过去,那么views中的配置为:

 1 def ajax(request): 2     if request.method == POST: 3         ret = {status:False,message:‘‘} 4         u = request.POST.get(user,None) 5         p = request.POST.get(pwd,None) 6         value = http://www.mamicode.com/request.POST.get(val,None) 7         user_count = models.UserInfo.objects.filter(user=u).count() 8         pan = models.UserInfo.objects.filter(user=u,passwd=p).count() 9 10         if user_count <= 0:11             if value =http://www.mamicode.com/= login:12                 ret[message] = 用户不存在13                 return HttpResponse(json.dumps(ret))14 15     return render(request,ajax_demo.html)

              在这里我只是简单的判断用户名是否存在,如果不存在,就ret字符串传送到前端页面,前端页面中success的部分就是处理来自views端传过来的数据。

         3、还有一个重要的部分需要我们来进行操作,就是路由系统,来看下我的配置:

       

urlpatterns = [    url(r^ajax/, views.ajax),]

         4、启动django

                屏幕输出中会有让我们访问的地址,基本上都是http://127.0.0.1:8000/,如果我们直接这样访问的话,肯定是出不来的,因为我们没有按照我们路由系统里面的设置去访问,所以我们需要在最后加上ajax 的url才可以访问正常。

Django框架