环境安装
1.创建虚拟环境
mkvirtualenv django_py3_1.11 -p python3
2.安装django
使用django1.11.11版本
pip install django==1.11.11
3.复习虚拟环境和pip命令
虚拟环境
mkvirtualenv 创建虚拟环境
rmvirtualenv 删除虚拟环境
workon 进入虚拟环境 查看所有虚拟环境
deactivate 退出虚拟环境
创建工程
创建
创建工程命令为:
django-admin startproject 工程名称
例如:要想在桌面的code目录下创建一个名为demo的项目工程,可执行如下命令
cd /Desktop/code
django-admin startproject demo
工程目录说明
与项目同名的目录
settings.py 是项目整体配置文件
urls.py 是项目的URL配置文件
wsgi.py 是项目与WSGI兼容的web服务器入口
manage.py 是项目管理文件,通过它管理项目
运行开发服务器
在开发阶段,为了能够快速预览到开发效果,django提供了一个纯python编写的轻量级web服务器,仅在开发阶段使用.
运行服务器命令如下:
python manage.py runserver
可以不写ip和端口,默认ip是127.0.0.1,默认端口是8000
django默认工作在调试Debug模式下,如果增加修改删除文件,服务器会自动重启
创建子应用
在web应用中,通常有一些业务功能模块是不同的项目中都可以复用的,故在开发中通常将工程项目拆分不同的子功能模块,各功能模块间可以保持相对独立,在其他工程项目中需要用到某个特定功能模块时,可以将该模块代码整体复制过去,达到复用.
1.创建
在django中,创建子应用模块目录仍然可以通过命令操作:
python manage.py startapp 子应用名称
例如,在刚才创建的demo工程中,想要创建一个用户Users子应用模块,可执行:
cd /Desktop/code/demo
python manage.py startapp users
2.子应用目录说明
admin.py 文件跟网站得后台管理站点配置相关
app.py 文件用于配置当前子应用的相关信息
migrations 目录存放数据库迁移历史文件
models.py 文件用户保存数据库模型类
tests.py 用于开发测试用例,编写单元测试
views.py 用于编写web应用视图
3.注册安装子应用
创建出来的子应用目录文件虽然被放到了工程项目目录中,但是django工程并不能立即直接使用该子应用,需要注册安装后才能使用.
在工程配置文件settings.py中,INSTALLED_APPS项保存了工程中已经注册安装的子应用,初始工程中的INSTALLED_APPS如下:

注册安装一个子应用的方法,是将子应用的配置信息文件apps.py中的Config类添加到INSTALLES_APPS列表中
例如:将刚创建的users子应用添加到工程中,可在INSTALLED_APPS列表中添加’users.apps.UsersConfig’

创建视图
django中的视图是用来编写web应用的业务逻辑,django视图时定义在子应用的views.py中
1.创建
打开刚创建的users模块,在views.py中编写视图代码
from django.http import HttpResponse
def index(request):
index视图
param request :包含请求信息的请求对象
return:响应对象
return HttpResponse('hello')
1.视图函数的第一个传入参数必须定义,用于接收django构造的包含了请求数据的HttpReqeust对象,通常名为request.
2.视图函数的返回值必须为一个响应对象,不能像Flask一样直接返回一个字符串,可以将要返回的字符串数据放到一个HTTPResponse对象中
定义路由URL
1.在子应用中新建一个urls.py文件用于保存该应用的路由
2.在users/urls.py文件中定义路由信息
from django.conf.urls import url
from . import views
urlpatterns是被django自动识别的路由列表变量
urlpatterns=[
每个路由信息都需要使用url函数来构造
url(路径,视图)
url(r'^index/$',views.index),
]
3.在工程总路由demo/urls.py中添加子应用的路由数据
from django.conf.urls import url, include
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls), # django默认包含的
# 添加
url(r'^users/', include('users.urls')),
]
使用include来将子应用users里的全部路由包含进工程路由中
r’^users/'决定了users子应用的所有路由都已/users/开头,如我们刚定义的视图index,其最终的完整访问路径为/users/index/
本文详细介绍了如何搭建Django工程,包括环境安装、工程创建、子应用创建以及视图的创建。在环境安装部分,讲解了虚拟环境的创建和管理,以及Django的安装。在工程搭建环节,阐述了工程目录结构和开发服务器的运行。接着,文章探讨了如何创建和注册子应用,以及子应用的目录结构和作用。最后,介绍了视图的创建和URL路由的定义,强调了视图函数和响应对象的重要性。
856

被折叠的 条评论
为什么被折叠?



