标签:需要 com 请求 mode 返回值 setting image 虚拟环境安装 概念
mkvirtualenv django_py3 -p python3
注意: 需要联网
pip install django==1.11.11
注意: 在虚拟环境中安装环境包,切记不要加sudo,否则会添加到系统环境中,成为全剧环境
# 虚拟环境 mkvirtualenv # 创建虚拟环境 rmvirtualenv # 删除虚拟环境 workon # 进入虚拟环境、查看所有虚拟环境 deactivate # 退出虚拟环境 # pip pip install # 安装依赖包 pip uninstall # 卸载依赖包 pip list # 查看已安装的依赖包 Django (1.11.11) pip freeze # 查看已安装的依赖包 django==1.11.11
在使用Flask框架时,项目工程目录的组织与创建是需要我们自己手动创建完成的。
在django中,项目工程目录可以借助django提供的命令帮助我们创建。
创建工程的命令为:
django-admin startproject 工程名称
例如:想要在桌面的code目录中创建一个名为demo的项目工程,可执行如下命令:
cd ~/Desktop/code
django-admin startproject demo
执行后,会多出一个新目录名为demo,此即为新创建的工程目录。
查看创建的工程目录,结构如下
在开发阶段,为了能够快速预览到开发的效果,django提供了一个纯python编写的轻量级web服务器,仅在开发阶段使用。
运行服务器命令如下:
python manage.py runserver ip:端口
或:
python manage.py runserver
可以不写IP和端口,默认IP是127.0.0.1,默认端口为8000。
启动后可见如下信息:
在浏览器中输入网址“127.0.0.1:8000”便可看到效果。
django默认工作在调式Debug模式下,如果增加、修改、删除文件,服务器会自动重启。
按ctrl+c停止服务器。
在Web应用中,通常有一些业务功能模块是在不同的项目中都可以复用的,故在开发中通常将工程项目拆分为不同的子功能模块,各功能模块间可以保持相对的独立,在其他工程项目中需要用到某个特定功能模块时,可以将该模块代码整体复制过去,达到复用。
在Flask框架中也有类似子功能应用模块的概念,即蓝图Blueprint。
Django的视图编写是放在子应用中的。
在django中,创建子应用模块目录仍然可以通过命令来操作,即:
python manage.py startapp 子应用名称
manage.py 为上述创建工程时自动生成的管理文件。
例如,在刚才创建的demo工程中,想要创建一个用户users子应用模块,可执行:
cd ~/Desktop/code/demo
python manage.py startapp users
执行后,可以看到工程目录中多出了一个名为users的子目录。
查看此时的工程目录,结构如下:
创建出来的子应用目录文件虽然被放到了工程项目目录中,但是django工程并不能立即直接使用该子应用,需要注册安装后才能使用。
在工程配置文件settings.py中,INSTALLED_APPS项保存了工程中已经注册安装的子应用,初始工程中的INSTALLED_APPS如下:
注册安装一个子应用的方法,即是将子应用的配置信息文件apps.py中的Config类添加到INSTALLED_APPS列表中。
例如,将刚创建的users子应用添加到工程中,可在INSTALLED_APPS列表中添加‘users.apps.UsersConfig‘。
同Flask框架一样,Django也用视图来编写Web应用的业务逻辑。
Django的视图是定义在子应用的views.py中的。
打开刚创建的users模块,在views.py中编写视图代码。
from django.http import HttpResponse def index(request): """ index视图 :param request: 包含了请求信息的请求对象 :return: 响应对象 """ return HttpResponse("hello the world!")
说明:
from django.conf.urls import url from . import views # urlpatterns是被django自动识别的路由列表变量 urlpatterns = [ # 每个路由信息都需要使用url函数来构造 # url(路径, 视图) url(r‘^index/$‘, views.index), ]
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函数除了可以传递字符串之外,也可以直接传递应用的urls模块,如
from django.conf.urls import url, include from django.contrib import admin import users.urls # 先导入应用的urls模块 urlpatterns = [ url(r‘^admin/‘, admin.site.urls), # url(r‘^users/‘, include(‘users.urls‘)), url(r‘^users/‘, include(users.urls)), # 添加应用的路由 ]
重新启动django程序
python manage.py runserver
标签:需要 com 请求 mode 返回值 setting image 虚拟环境安装 概念
原文地址:https://www.cnblogs.com/Leon27-29/p/12198826.html