精华内容
下载资源
问答
  • Django新手教程
    2018-01-30 19:31:08

    安装好Django以后 

    创建新项目

    django-admin startproject mysite

    新创一个应用

    python manage.py startapp APPNAME
     
    
    开启Django自带服务
    python manage.py runserver
     
    
    创建超级管理员
     
    
    python manage.py createsuperuser 
     
    
    开启Django自带shell
     
    
    python manage.py shell
     
    
     
    即修改了数据库结构后执行此句会生成一个数据库的配置文件,相当于备份。可用于debug和回滚。 
    
     
    
    python manage.py makemigrations
     
    
    迁移数据库
    python manage.py migrate
     
    
    在后台添加模型语句
    from .models import Article
    
    admin.site.register(Article) #在后台中添加此模型
    
    
    
    
    
    
    
    
    
    Django 连接 Mysql 的配置
     
    
     
    

    settings.py中database配置


    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql', mysql包
            'NAME': 'blog',	 数据库名
            'USER': 'xxx',	数据库账号	
            'PASSWORD': 'xxx', 数据库密码
            'HOST': '127.0.0.1', 
            'PORT': '3306', 端口
        }
    }

    更多相关内容
  •  具体介绍Django之前,必须先介绍WEB框架等概念。 web框架:别人已经设定好的一个web网站模板,你学习它的规则,然后“填空”或“修改”成你自己需要的样子。 一般web框架的架构是这样的: 其它基于python的web...
  • Django新手项目实例

    万次阅读 多人点赞 2019-07-30 16:24:24
    (1)安装Django: pip3 install django (2)配置系统环境 成功安装Django后,在python目录script路径可找到django-admin.exe文件,将它加入操作系统环境变量中。这样以后调用会比较方便。 运行 django-admin help...

    1. 程序安装

    (1)安装Django:

    pip3 install django
    

    (2)配置系统环境
    成功安装Django后,在python目录script路径可找到django-admin.exe文件,将它加入操作系统环境变量中。这样以后调用会比较方便。
    运行

    django-admin help
    

    能看到下面的内容表示安装过程OK。
    在这里插入图片描述

    2. 创建Django项目

    新建个文件夹,cmd进入该目录,输入以下代码

    django-admin startproject testdj
    

    项目创建完毕,如下图
    在这里插入图片描述

    3. 创建APP

    在项目根目录输入命令

    python manage.py startapp login
    

    app创建完毕如下图
    在这里插入图片描述

    4. 编写路由

    路由是浏览器输入url,在Django服务器响应url的转发中心。路由都写在urls文件里,它将浏览器输入的url映射到相应的业务处理逻辑也就是视图。简单的urls编写方法如下图:
    在这里插入图片描述

    5. 编写视图函数

    路由转发用户请求到视图函数。视图函数处理用户请求,也就是编写业务处理逻辑,一般都在views.py文件里。我们下面写一个简单的视图函数:

    在这里插入图片描述
    通过上面两个步骤,我们将index这个url指向了views里的index()视图函数,它接收用户请求,并返回一个“hello world”字符串。

    6. 运行web服务

    现在我们已经可以将web服务运行起来了。

    命令行的方式是:

    python manage.py runserver 127.0.0.1:8000
    

    访问端口,修改一下url,添加“/index/”,就一切ok了!
    在这里插入图片描述

    7. 返回HTML文件

    上面我们返回给用户浏览器的是什么?一个字符串!实际上这肯定不行,通常我们都是将HTML文件返回给用户。

    下面,我们在templates目录中新建一个index.html文件:
    代码如下

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>test</title>
    </head>
    <body>
        <h1 style="color: black">Hello World!</h1>
    </body>
    </html>
    

    在这里插入图片描述
    再回到views.py文件,编辑index视图,注释当前的return语句,导入render方法,换上新的return语句:
    在这里插入图片描述
    为了让django知道我们的HTML文件在哪里,需要修改settings文件的相应内容。但默认情况下,它正好适用,你无需修改。
    在这里插入图片描述
    接下来,我们可以重新启动web服务。在浏览器刷新一下,你会看到带有样式的“Hello World”。

    在这里插入图片描述
    注:这里有个小技巧,在多次频繁重启服务时,可能会不能及时释放端口,容易启动不了服务,修改一下端口就OK了。

    8. 使用静态文件

    我们已经可以将HTML文件返还给用户了,但是这还不够,前端三大块HTML、CSS、JavaScript,还有各种插件,它们齐全才是一个完整的页面。在Django中,一般将这些静态文件放在static目录中。

    接下来,在mysite中新建一个static目录。(下面导入的静态文件仅用于流程展示,并不实际使用它做点什么。)
    在这里插入图片描述
    你的CSS、JS和各种插件都可以放置在这个目录里。比如这里,我们又在static下新建了一个js目录,然后拷贝了一个jquery-3.2.1.min.js进来:
    在这里插入图片描述
    为了让Django知道这个static目录的存在,并能够找到这个目录,需要对settings.py进行配置:

    STATIC_URL = '/static/'
    STATICFILES_DIRS=[
        os.path.join(BASE_DIR,'static')
    ]
    

    现在,我们就可以在index.html中引入js文件了:
    在这里插入图片描述
    重新启动web服务,刷新浏览器,查看结果。当然,你啥都看不出来,因为仅仅引入了一个jqurey而已

    9. 接收用户发送的数据

    前面,我们将一个要素齐全的HTML文件返还给了用户浏览器。但这还不够,因为web服务器和用户之间没有动态交互。

    下面我们设计一个表单,让用户输入用户名和密码,提交给index这个url,服务器将接收到这些数据。

    先修改index.html文件。删除原来的内容,写入下面的内容:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>首页</title>
    </head>
    <body>
        <h1>用户输入:</h1>
        <form action="/index/" method="post">
            用户名:<input type="text" name="username" /><br />
            密码:<input type="password" name="password" /><br />
            <input type="submit" value="提交" />
        </form>
    </body>
    </html>
    
    

    在这里插入图片描述

    这时候我们先不要往输入框内输入信息。我们先修改views.py文件:

    from django.shortcuts import render
    from django.shortcuts import HttpResponse
    
    # Create your views here.
    
    
    def index(request):
        if request.method == 'POST':
            username = request.POST.get('username')
            password = request.POST.get('password')
            print(username, password)
        return render(request, 'index.html')
    

    因为django有一个跨站请求保护机制,这需要我们在index.html文件中加入一行{% csrf_token %}。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>首页</title>
    </head>
    <body>
        <h1>用户输入:</h1>
        <form action="/index/" method="post">
        #下面这个代码会随机生成一个token
            {% csrf_token %}   <!--加入这行 --> 
            用户名:<input type="text" name="username" /><br />
            密码:<input type="password" name="password" /><br />
            <input type="submit" value="提交" />
        </form>
    </body>
    </html>
    
    

    再次进入浏览器,刷新index页面,输入点东西,这次就能成功提交了,然后我们可以看到print语句打印出来的相应数据了。

    10. 返回动态页面

    现在,我们收到了用户的数据,但返回给用户的依然是个静态页面。通常我们会根据用户的数据,进行处理后再返回给用户。

    先改造views.py文件:在这里插入图片描述

    from django.shortcuts import render
    from django.shortcuts import HttpResponse
    
    # Create your views here.
    
    user_list = []
    
    
    def index(request):
        if request.method == 'POST':
            username = request.POST.get('username')
            password = request.POST.get('password')
            print(username, password)
            temp = {'user': username, 'pwd': password}
            user_list.append(temp)
        return render(request, 'index.html', {'data': user_list})
    

    再改造index.HTML文件:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>首页</title>
    </head>
    <body>
        <h1>用户输入:</h1>
        <form action="/index/" method="post">
            {% csrf_token %}   <!--加入这行 -->
            用户名:<input type="text" name="username" /><br />
            密码:<input type="password" name="password" /><br />
            <input type="submit" value="提交" />
        </form>
    
        <h1>用户展示:</h1>
            <table border="1">
                <thead>
                    <tr>用户名</tr>
                    <tr>密码</tr>
                </thead>
                <tbody>
                    {% for item in data %}
                    <tr>
                        <td>{{ item.user }}</td>
                        <td>{{ item.pwd }}</td>
                    </tr>
                    {% endfor %}
                </tbody>
            </table>
    </body>
    </html>
    

    说明:Django采用自己的模板语言,类似jinja2,根据提供的数据,替换掉HTML中的相应部分,详细语法入门后再深入学习。
    接下来,重启服务,刷新浏览器,多输入几次。

    在这里插入图片描述

    11. 使用数据库

    流程走到这里,django的MTV框架基本已经浮出水面了,只剩下最后的数据库部分了。

    上面我们虽然和用户交互得很好,但并没有保存任何数据,页面一旦关闭,或服务器重启,一切都将回到原始状态。

    使用数据库的需求是毫无疑问的,Django通过自带的ORM框架操作数据库,并且原生支持轻量级的sqlite3数据库。下面我们来看一看:

    使用数据库前,我们需要注册app:

    setting.py里修改INSTALLED_APPS,把login注册进去:

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'login',
    ]
    
    

    不注册它,你的数据库就不知道该给哪个app创建表。

    然后我们在settings中,配置数据库相关的参数,如果使用sqlite3,则不需要做任何修改。
    在这里插入图片描述
    再编辑app中的models.py文件

    from django.db import models
    
    # Create your models here.
    class UserInfo(models.Model):
        user = models.CharField(max_length=32)
        pwd = models.CharField(max_length=32)
        
    

    这里我们创建了2个字段,分别保存用户的名字和密码。

    接下来要在Pycharm的Teminal中通过命令创建数据库的表了。有2条命令,分别是:

    python manage.py makemigrations
    

    这会在login目录中的migrations目录中生成一个0001_initial.py迁移记录文件。

    再输入命令:

    python manage.py migrate
    

    这样,我们就在数据库中将所有app的数据表都创建好了。我们可以看到项目根目录下出现了一个db.sqlite3文件:在这里插入图片描述
    现在,我们来修改views.py中的业务逻辑

    from django.shortcuts import render,HttpResponse
    from login import models
    # Create your views here.
    user_list=[]
    def index(request):
        if request.method=='POST':
            username=request.POST.get('username')
            password=request.POST.get('password')
            #数据保存到数据库
            models.UserInfo.objects.create(user=username,pwd=password)
         
        #数据库读取数据
        user_list=models.UserInfo.objects.all()
        print(user_list)
        return render(request,'index.html',{'data':user_list})
        
    
    
    

    重启web服务后,刷新浏览器页面,之后和用户交互的数据都能保存到数据库中。任何时候都可以从数据库中读取数据,展示到页面上,不会因为服务器中途关闭,丢失先前的数据了。

    至此,一个要素齐全,主体框架展示清晰的Django项目完成了

    展开全文
  • Django新手图文教程

    2017-03-24 09:39:06
    Django新手图文教程本文面向:有python基础,刚接触web框架的初学者。环境:windows7 python3.5.1 pycharm专业版 Django 1.10版 pip3 一、Django简介百度百科:开放源代码的Web应用框架,由Python语言编写……重点...

    Django新手图文教程

    本文面向:有python基础,刚接触web框架的初学者。

    环境:windows7    python3.5.1   pycharm专业版   Django 1.10版  pip3
    

    一、Django简介

    百度百科:开放源代码的Web应用框架,由Python语言编写……

    重点:一个大而全的框架,啥都替你考虑好了。

    1. web框架介绍

    具体介绍Django之前,必须先介绍WEB框架等概念。

    web框架: 别人已经设定好的一个web网站模板,你学习它的规则,然后“填空”或“修改”成你自己需要的样子。

    一般web框架的架构是这样的:
    Web框架

    其它基于python的web框架,如tornado、flask、webpy都是在这个范围内进行增删裁剪的。例如tornado用的是自己的异步非阻塞“wsgi”,flask则只提供了最精简和基本的框架。Django则是直接使用了WSGI,并实现了大部分功能。

    2. MVC/MTV介绍

    MVC百度百科:全名Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。

    通俗解释:一种文件的组织和管理形式!不要被缩写吓到了,这其实就是把不同类型的文件放到不同的目录下的一种方法,然后取了个高大上的名字。当然,它带来的好处有很多,比如前后端分离,松耦合等等,就不详细说明了。       

    模型(model):定义数据库相关的内容,一般放在models.py文件中。
    
    视图(view):定义HTML等静态网页文件相关,也就是那些html、css、js等前端的东西。
    
    控制器(controller):定义业务逻辑相关,就是你的主要代码。  
    

    MTV: 有些WEB框架觉得MVC的字面意思很别扭,就给它改了一下。view不再是HTML相关,而是主业务逻辑了,相当于控制器。html被放在Templates中,称作模板,于是MVC就变成了MTV。这其实就是一个文字游戏,和MVC本质上是一样的,换了个名字和叫法而已,换汤不换药。

    3.Django的MTV模型组织

    目录分开,就必须有机制将他们在内里进行耦合。在Django中,urls、orm、static、settings等起着重要的作用。一个典型的业务流程是如下图所示:

    那么我们学Django学的是什么?
    1. 目录结构规范
    2. urls路由方式
    3. settings配置
    4. ORM操作
    5. jinja2模板渲染
    6.其它

    二、Django项目实例

    1. 程序安装

    python3.5、pip3及pycharm专业版自行安装。pycharm不要使用免费版,它不支持Django。

    (1)安装Django:

    这里只介绍较为简单的pip3命令安装方式。

    win+r,调出cmd,运行命令:pip3 install django,自动安装Pypi提供的最新版本。

    这里写图片描述

    安装完成后如下图所示:
    这里写图片描述

    (2)配置系统环境

    成功安装Django后,在下图中的路径可找到django-admin.exe文件,将它加入操作系统环境变量中。这样在以后的调用会比较方便。




    2. 创建django项目

    在linux等命令行界面下,使用django提供的命令和vim也能进行项目开发。但是,这里推荐使用pycharm这个目前最好的python开发IDE,它功能强大,界面友好。(下面所有的操作都在pycharm中进行。)

    点击:file–>new project,出现下面的对话框。


    选择Django栏目,输入项目名称,这里采用国际惯例的mysite。选择python解释器版本,点击create创建。

    Django将自动生成下面的目录结构:

    与项目同名的目录中是配置文件,templates目录是html文件存放也就是MTV中的T。manage.py是django项目管理文件。

    3. 创建APP

    在每个django项目中可以包含多个APP,相当于一个大型项目中的分系统、子模块、功能部件等等,相互之间比较独立,但也有联系。所有的APP共享项目资源。

    在pycharm下方的terminal终端中输入命令:

    python manage.py startapp cmdb
    

    这样就创建了一个叫做cmdb的APP,django自动生成“cmdb”文件夹。

    4. 编写路由

    路由都在urls文件里,它将浏览器输入的url映射到相应的业务处理逻辑。

    简单的urls编写方法如下图:

    5. 编写业务处理逻辑

    业务处理逻辑都在views.py文件里。

    通过上面两个步骤,我们将index这个url指向了views里的index()函数,它接收用户请求,并返回一个“hello world”字符串。

    6. 运行web服务

    现在我们已经可以将web服务运行起来了。

    命令行的方式是:python manage.py runserver 127.0.0.1:8000

    但在pycharm中,你可以这么干:

    在上部工具栏中找到下面图示的图标。


    点击下拉箭头

    点击edit configurations

    在host中填入:127.0.0.1   port中填入:8000

    OK确定之后,点击绿色的三角,web服务就运行起来了。

    按图所示,自动跳转到浏览器程序界面。显示的却是下图的404页面:

    修改一下url,添加“/index”,就一切ok了!

    至此,一个最简单的django编写的web服务就启动成功了。

    7. 返回HTML文件

    上面我们返回给用户浏览器的是什么?一个字符串!实际上这肯定不行,通常我们都是将html文件返回给用户。

    下面,我们写这么一个index.html文件:

    再修改一下views文件:

    为了让django知道我们的html文件在哪里,需要修改settings文件的相应内容。但默认情况下,它正好适用,你无需修改。

    接下来,我们可以重新启动web服务。在浏览器刷新一下,你会看到带有样式的“hello world”。

    注:这里有个小技巧,在多次频繁重启服务时,由于端口未释放的原因,容易启动不了服务,修改一下端口就OK了。

    8. 使用静态文件

    我们已经可以将html文件返还给用户了,但是还不够,前端三大块,html、css、js还有各种插件,它们齐全才是一个完整的页面。在django中,一般将静态文件放在static目录中。接下来,在mysite中新建个static目录。


    你的CSS,JS和各种插件都可以放置在这个目录里。

    为了让django找到这个目录,依然需要对settings进行配置:

    同样,在index.html文件中,可以引入js文件了:

    重新启动web服务,刷新浏览器,查看结果。

    9. 接收用户发送的数据

    上面,我们将一个要素齐全的html文件返还给了用户浏览器。但这还不够,因为web服务器和用户之间没有动态交互。

    下面我们设计一个表单,让用户输入用户名和密码,提交给index这个url,服务器将接收到这些数据。

    先修改index.html文件

    然后修改views.py文件

    此时 ,重启web服务时,会出错,因为django有一个跨站请求保护机制,我们在settings文件中将它关闭。

    再次进入浏览器,刷新页面:

    输入点东西,然后我们在pycharm中可以看到相应的数据。

    10. 返回动态页面

    我们收到了用户的数据,但返回给用户的依然是个静态页面,通常我们会根据用户的数据,进行处理后在返回给用户。

    这时候,django采用jinja2语言编写动态模板,jinja2会根据提供的数据,替换掉html中的相应部分,详细语法入门后再深入学习。

    先改造views.py文件:

    再改造index.html文件:

    重启服务,刷新浏览器:

    可以看到,我们获得了用户实时输入的数据,并将它实时展示在了用户页面上,这是个不错的交互过程。

    11. 使用数据库

    流程走到这里,django的MTV框架基本已经浮出水面了,只剩下最后的数据库部分了。

    上面我们虽然和用户交互得很好,但并没有保存任何数据,页面一旦关闭,或服务器重启,一切都将回到原始状态。

    使用数据库是毫无疑问的,django通过自带的ORM框架操作数据库,并且自带轻量级的sqlite3数据库。下面我们来看一看:

    首先是注册app:

    不注册它,你的数据库就不知道该给哪个app创建表。

    然后我们在settings中,配置数据库相关的参数,如果使用自带的sqlite,不需要修改。

    再编辑models.py文件,也就是MTV中的M。

    这里我们创建了2个字段,分别保存用户的名字和密码。

    接下来要在pycharm的teminal中通过命令创建数据库的表了。有2条命令,分别是:

    python manage.py makemigrations
    

    再输入命令:python manage.py migrate

    修改views.py中的业务逻辑

    重启web服务后,刷新浏览器页面,之后和用户交互的数据都能保存到数据库中。任何时候都可以从数据库中读取数据,展示到页面上。

    至此,一个要素齐全,主体框架展示清晰的django项目完成了,其实很简单是不是?

    三、 Django总结

    作为python必须web框架的Django,它的功能强大,内容全面,但同时也意味着限制颇多,灵活性低,可修改性差,这就是鱼和熊掌不可兼得了。我们学习Django,其实就是学习一个软件,要理解它的基本原理,把握它整体框架,牢记一些基本规则,剩下的就是不断深入细节,然后熟能生巧、经验多少的问题了,不存在多高深的不可掌握技术。

    关于学习方法的建议:学习任何东西,不要直接扎入细节,应该先了解它的外围知识,看看它的整体架构,再学习它的基本内容,然后才是深入学习,打磨技巧!

    转载自:http://www.cnblogs.com/Leo_wl/p/5824541.html

    展开全文
  • Django新手入门(四)——Django的MTV架构MTV和MVCMVC架构MTV架构M、T和VM——Model——models.pyT——Template——template文件夹V——View——views.pyDjango MTV架构下网站开发步骤 Django使用的MTV(大约可以...

    Django使用的MTV(大约可以模拟到MVC)架构。为了把数据抽象化,Django把数据的存取和显示区分为Model、Template以及View,分别对应models.py、template文件夹以及views.py这些文件。本文将详细介绍Django的MTV架构,以便读者在整体上把握Django开发。

    MTV和MVC

    MVC架构

    MVC架构是设计人员在大部分框架或大型程序项目中都很喜欢使用的一种软件工程架构模式,它把一个完整的程序或网站项目(广义来说就是软件)分成3个主要的组成部分分别是Model模型、View视图以及Controller控制器。也就是希望一个项目可以让内部数据的存储操作方式、外部的可见部分以及过程控制逻辑相互配合运行,进一步简化项目的复杂度以及对未来的可扩充性和软件的可维护性,有助于不同的成员相互之间的分工。

    各模块的作用如下:

    模块作用
    Model数据模块包含系统中的数据内容,通常以数据库的形式来存储,如果这些内容有变动,就会通知View实时更改显示的内容,一些处理数据的程序逻辑也会放在这里
    View视图模块创建和用户之间的界面,把用户的请求传送给Controller,并按照Controller的要求把来自Model的数据显示出来
    Controller控制模块派发View传来的用户请求,并按照这些请求处理数据内容以及设置要显示的数据

    把一个系统拆成这样有几个好处。其中最重要的是可以大幅地降低系统的复杂性,因为它很明确地描述了系统中不同功能区块分工。同时,也因为这3个部分的明确分工,所以在一个由许多成员分工实现的大型项目中,可以更容易地进行团队合作,例如负责数据库的人员、外观设计的人员以及程序编写人员在协作时有更多弹性。

    MTV架构

    MVC架构把软件项目区分为数据、显示以及控制器3个部分,这样的分类大部分指的是传统的软件系统,对网站而言,网页服务器在收到远程浏览器的请求时,不同的网址以及连接的方式其实隐含了部分控制逻辑,因此很难把Django这类网站框架严谨地定义为上述3个部分,因此Django另外设计了MTV(Model,Template,View)。

    Django基本上使用MVC架构,但是网页服务器本身在派发工作的时候就隐含了控制的逻辑,网站框架中Template模板文件的套用又是最常被使用的网页显示技巧,所以Django主要的架构形成了使用Model、Template和View三个部分的搭配,这3个部分分别对应网站的数据存储model.py、网站的模板文件组(一般是放在templates文件夹下的html文件)以及控制如何处理数据程序逻辑的views.py,其中许多控制逻辑也被放在整个Django Framework中(如urls.py的设置等)。

    在这里插入图片描述
    用户在浏览器下达request,这个request会被先送到网站服务器中做分派工作,这个分派的工作制定在urls.py中完成。每一个分派的工作都会被设置成views,py中的函数,也就是主要处理数据的逻辑,在views.py中完成。views.py中处理的数据依靠models.py来操作。

    M、T和V

    M——Model——models.py

    Model是Django表示数据的模式,以Python的类为基础在models.py中设置数据项与数据格式,基本上每个类对应一个数据库中的数据表。在后端Django会自动把这个类中的设置对应到数据库系统中,不管使用的是哪一种在数据库。因此,定义每个数据项时,除了数据项名称外,也要定义此项目的格式以及这张表和其他表格相互之间的关系(即数据关联)。定义完毕后,网站的其他程序就可以使用Python语句来操作这些数据内容,不用关心实际使用的SQL指令以及使用的是哪一种数据库。在models.py中定义所有需要用到的数据格式,一般是以数据库的形式来存储的,定义后的Model数据类要把它import到views.py中。

    T——Template——template文件夹

    把取得的数据用美观且有弹性的方式输出,是在Template中处理。使用templates来做每个网页的外观框架,送至template中要被使用的数据尽量是可以直接显示的简单形式,不要试图在template文件中使用复杂的方法处理这些送进来的变量,如果需要对变量进行更复杂的运算,那么这些工作应该放在views.py中完成。

    V——View——views.py

    把数据取出来,或是如何存进去等程序逻辑,则是在View中,也就是在view.py中处理。View是Django最重要的程序逻辑所在的地方,网站大部分程序设计都放在这里。这里放了许多要操作的数据,以及安排哪些数据需要被显示出来的函数,在函数中把这些数据传送给网页服务器或交由Template的渲染器后再送到网页服务器中。这些放在views.py中的函数,再由urls.py中的设计进行对应和派发。

    Django MTV架构下网站开发步骤

    • 需求分析不可少,一定要具体列出本次网站项目所要实现的目标,可能包括简单的页面草图与功能方块图等。
    • 数据库设计。在需求分析后,开始创建数据模块前,网站中所有会用到的数据内容、格式以及各个数据之间的关系一定要理清,最好事先把要创建的数据表都确定清楚,减少开始设计程序后修改Model的工作。
    • 了解网站的每一个页面,并设计网页模板(.html)文件。
    • 使用virtualenv创建并启用虚拟机环境。
    • 使用pip install安装django。
    • 使用django-admin startproject生成项目。
    • 使用python manage.py startapp创建app。
    • 创建templates文件夹,并把所有网页模板(.html)文件都放在此文件夹中。
    • 创建static文件夹,并把所有静态文件(图像文件、.css文件以及.js文件等)都放在此文件夹中。
    • 修改settings.py文件,把相关文件夹设置都加入,也把生成的app名称加入INSTALLED_APPS序列中。
    • 编辑models.py创建数据库表格。
    • 编辑views.py,先import在models.py中创建的数据模型。
    • 编辑admin.py,把models.py中定义的数据模型加入,并使用admin.site.register注册新增的类,让admin界面可以处理数据库内容。
    • 编辑views.py设计处理数据的相关模块,输入和输出都通过templates相关的模块操作获取来自于网页的输入数据,以及显示.html文件的网页内容。
    • 编辑urls.py,先import在views.py中定义的模块。
    • 编辑urls.py,创建网址和views.py中定义的模块的对应关系。
    • 执行python manage.py makemigrations。
    • 执行python manage.py migrate。
    • 执行python manage.py runserver测试网站。
    展开全文
  • Django新手入门(五)——Models详解数据库ORMDjango中的ORMDjango中的Models定义models.py中的类常用数据字段常用设置选项常用函数以及修饰词其他常用设置在Django中使用数据库系统(以MySQL为例) 在之前的文章中...
  • Django新手入门——使用PyCharm创建Django项目创建工作目录Django安装创建Django项目创建应用文件作用重述运行项目 在之前的文章中我们对Django框架和常用命令有了一定的了解,由于PyCharm已经成为Python开发的主要...
  • Django新手入门介绍

    2021-02-24 08:42:22
    Django新手入门介绍 Django 是一个由 Python 编写的一个开放源代码的 Web 应用框架。学习Django的前提:需要具备某种编程语言的基础本文以Python语言为例,还需要懂些css,js、数据库(如Mysql)等。 使用 ...
  • Django新手入门(二)——快速构建网站常用命令介绍创建项目创建应用启动服务常用文件介绍构建网站 常用命令介绍 创建项目 创建项目的命令为 django-admin startproject 项目名 创建应用 创建应用的命令为 python ...
  • Django新手配置教程

    2020-04-17 15:21:15
    Django 框架在服务器上的配置,以及简易web应用
  • Django新手上路——路由匹配 1 1. URL 1.1 定义 URL即统一资源定位符,网络资源的地址,包含对应文件的位置和浏览器对该资源的处理方式。 1.2 格式 schema://host[:port#]/path/.../[?query-string][#anchor] # ...
  • 让我们开始编写第一个视图吧。打开 rsprocess/views.py,把下面这些 Python 代码输入进去: ...这是 Django 中最简单的视图。如果想看见效果,我们需要将一个 URL 映射到它——这就是我们需要 URLconf 的原...
  • Django新手入门(一)——了解Django和网站Django简介Django是什么Django特点Django框架的核心组件网站简介网站是什么网站的分类前端语言和后端语言用Django开发网站作者有话说 很久没有进行技术博客的更新了,一直...
  • Django 里写一个数据库驱动的 Web 应用的第一步是定义模型 - 也就是数据库结构设计和附加的其它元数据。 设计哲学 模型是真实数据的简单明确的描述。它包含了储存的数据所必要的字段和行为。Django 遵循DRY ...
  • 1、使用pycharm创建一个Django项目,我的项目名是gis_2 2、创建完成后会生成目录,如图 gis_2/ manage.py gis_2/ __init__.py settings.py urls.py wsgi.py 解释: 1.最外层的gis_2是项目的容器,可以改...
  • Django 中,每一个应用都是一个 Python 包,并且遵循着相同的约定。Django 自带一个工具,可以帮你生成应用的基础目录结构,这样你就能专心写代码,而不是创建目录了。 项目 VS 应用 项目和应用有啥区别?应用...
  • 下面是关于Django新手开发中的一些建议,大家可以参考一下~~ 1,不要将项目名称包含在引用代码里 比如你创建了一个名为"project"的项目,包含一个名为"app"的应用,那么如下代码是不好的: from project.app....
  • 一、Django简介 百度百科:开放源代码的Web应用框架,由Python语言编写…… 重点:一个大而全的框架,啥都替你考虑好了。 1. web框架介绍 具体介绍Django之前,必须先介绍WEB框架等概念。 web框架:...
  • from django.core import serializers from rsprocess.models import * 在view中新增一个方法,方法名为getGisInfo() def getGisInfo(request): if request.method == 'GET': res = Gis_inf
  • 摘要:目前遇到的情况是需要在django中写一个自己的类,然后在views里面进行引入。 按照常规操作,直接引入会报错。 如图 在views.py中,我想将./emotion_classifier_tensorflow_version/CNN/cnn.py文件导入,...
  • 一、Django简介 百度百科:一个开放源代码的Web框架,由Python语言编写...... 重点:一个大而全的框架,啥都替你考虑好了。 1. web框架介绍 具体介绍Django之前,必须先介绍Web框架的概念。 Web框架: 别人已经...
  • 问题解决方案 一、NameError: name ‘XXX’ is not defined 在urls.py文件中,加上一句话,引入相应的模块就好 1、NameError: name ‘include’ is not defined #导入 include from django.conf.urls import include...
  • 在命令行里输入以下命令就能以本地IP和7000这样的自定义端口上运行网站服务器 py py manage.py runserver 0:7000 如果是新建Project ,没有改过settings.py文件里的内容,则访问时会报错像这样: ...
  • 文章目录创建一个project创建一个应用 `py manage.py startapp polls`创建一个试图数据库设置... django-admin startproject mysite mysite目录结构 mysite/ manage.py mysite/ __init__.py settings.py urls.py...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,060
精华内容 3,224
关键字:

django 新手