1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Django框架学习——1—(虚拟环境搭建 MVC思想与Django的MVT区别 Django项目的创建

Django框架学习——1—(虚拟环境搭建 MVC思想与Django的MVT区别 Django项目的创建

时间:2020-01-17 08:03:05

相关推荐

Django框架学习——1—(虚拟环境搭建 MVC思想与Django的MVT区别 Django项目的创建

1、虚拟环境搭建

创建新的Django框架的虚拟环境:

注意:如果没有pipenv指令,需要安装这个支持库,同时需要记住配置它的环境变量,否则虚拟环境会安装在默认文件夹下(一般是C:\Users\Administrator.virtualenvs)

# Windows安装pipenvpip install pipenvpipenv shell # 进入虚拟环境exit # 退出虚拟环境pipenv --rm# 删除整个环境 不会删除pipfile

Window系统安装Django 2.2(注意要在虚拟环境下)

# Window系统安装Django 2.2

pycharm设置python解释器

2、MVC思想与Django的MVT区别

在Django框架中,将Controller改换成Templates模板,就成了MVT,但是在Django中的View视图负责的功能就是MVC思想中Controller的功能。

3、Django项目的创建

1. 命令行创建

推荐使用命令行创建项目的方法

# 进入虚拟环境,xxx是自己创建的虚拟环境文件夹cd /d xxxpipenv shell# 查看虚拟环境python的版本,需要是3.6的python# 创建项目:打开终端,使用命令:django-admin startproject [项目名称] 比如:django-admin startproject first_project。

注意:项目名称注意尽量不要有中文,项目路径也尽量不要有。

2. Pycharm专业版创建Django

需要使用Pycharm Professional版本的,社区版本无法创建。

Pycharm专业版本激活方法参考:https://shimo.im/docs/DJ3h3tJv98ppTYyH/read

4、运行Django项目

1. 命令行运行项目

# 启动Django项目python manage.py runserver# 如果想要在项目启动的时候指定端口,可以执行python manage.py runserver 8888# 此时就可以使用http://127.0.0.1:8888/ 端口进行访问Django

上图中有红色部分提醒信息是因为有些Django默认的信息我们还没更改,比如admin, auth, contenttypes, sessions.

运行成功显示界面效果:Django默认开启Debug模式,此时版本为2.2.

且Django默认自带后台

2. Pycharm启动项目

1.选择Edit Configurations选择项

2.添加runserver参数

3.在manage.py文件中右键选择Run manage,项目启动成功如下:

5、项目结构介绍

以下是Django项目固定的设置,不同于Flask框架。

manage.py:和项目交互基本上都是基于这个文件。一般都是在终端输入python manage.py [子命令]

可以输入python manage.py help看下能做什么事情。除非你知道你自己在做什么,一般情况下不应该编辑这个文件。settings.py:本项目的设置项,以后所有和项目相关的配置都是放在这个里面。Flask框架中是人为定义的config.py文件。urls.py:这个文件是用来配置URL路由的。比如访问http://127.0.0.1/news/是访问新闻列表页,这些东西就需要在这个文件中完成。Flask框架中是通过route的装饰器去配置路由,或者类视图绑定路由。wsgi.py:项目与WSGI协议兼容的web服务器入口,服务器部署的时候需要用到的,一般情况下也是不需要修改的。

1. project和app的关系

app是django项目的组成部分。一个app代表项目中的一个模块,所有URL请求的响应都是由app来处理。比如豆瓣,里面有图书,电影,音乐,同城等许许多多的模块,如果站在django的角度来看,图书,电影这些模块就是app,图书,电影这些app共同组成豆瓣这个项目。因此这里要有一个概念:django项目由许多app组成,一个app可以被用到其他项目,django也能拥有不同的app

项目要求:高内聚低耦合,两个独立模块的联系越少越好。

2. 创建app

python manage.py startapp [app名称]

app中的文件

init.py 说明目录是一个Python模块models.py 写和数据库相关的内容views.py 接收请求,处理数据 与M和T进行交互tests.py 写测试代码的文件(暂时不需要关心)admin.py 网站后台管理相关的

应用注册

建立应用和项目之间的联系,需要对应用进行注册。

修改settings.py中的INSTALLED_APPS配置项

测试代码:

utls.py文件定义和绑定不同的路由,这种方法和路由都在一起,后期会造成项目的代码文件臃肿。

from django.contrib import adminfrom django.urls import pathfrom django.http import HttpResponse# django框架中写视图函数,必须要传参requestdef index(request):return HttpResponse("hello world") # 返回值必须是 HttpResponse包裹住的类型# django框架中写视图函数,必须要传参requestdef book(request):return HttpResponse("图书首页") # 返回值必须是 HttpResponse包裹住的类型urlpatterns = [path('admin/', admin.site.urls), # django默认路由前面有/,不需要添加path('', index),# 路由为/,绑定的方法是index,此时不能加()path('book/', book), # 路由为book/,绑定的方法是book]

3. 项目中真正的定义和绑定路由的方式

book/views.py文件中定义路由的方法

from django.shortcuts import render# Create your views here.from django.http import HttpResponse# django框架中写视图函数,必须要传参requestdef book(request):return HttpResponse("图书首页") # 返回值必须是 HttpResponse包裹住的类型# django框架中写视图函数,必须要传参requestdef index(request):return HttpResponse("hello world") # 返回值必须是 HttpResponse包裹住的类型

utls.py文件绑定不同的路由

from django.contrib import adminfrom django.urls import pathfrom django.http import HttpResponsefrom book.views import book # 从其他app模块中导入定义的路由方法from book.views import indexurlpatterns = [path('admin/', admin.site.urls), # django默认路由前面有/,不需要添加path('', index),# 路由为/,绑定的方法是book模块中views.py的index方法path('book/', book), # 路由为book/,绑定的方法是book模块中views.py的index方法]

4. DEBUG模式

• 开启了debug模式,那么修改代码,然后按下ctrl+s,那么Django会自动重启项目

• Django项目中代码出现了问题,在浏览器中和控制台中会打印错误信息

• 如果项目上线了,关闭debug模式,不然有很大的安全隐患,因为项目错误信息会显示在页面上,不安全

• 关闭DEBUG模式,在setting文件中,将DEBUG = False

Django框架学习——1—(虚拟环境搭建 MVC思想与Django的MVT区别 Django项目的创建 运行Django项目 项目结构介绍)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。