20181029day1django配置
一、环境安装
1、创建虚拟环境
mkvirtualenv django_py3_1.11
2、安装django
pip install django==1.11.11
3、虚拟环境和pip命令:
#虚拟环境:
mkvirtualenv #创建虚拟环境
rmvirtualenv #删除虚拟环境
workon #进入虚拟环境、查看所有的虚拟环境
deactivate #退出虚拟环境
#pip
pip install #安装依赖包
pip uninstall #写在依赖包
pip list #查看已安装的依赖包
pip freeze #冻结当前环境的依赖包
二、创建工程
1、创建
django-admin startproject 工程名
例:需要在桌面的code目录创建一个名为demo的项目工程,可执行如下命令:
cd ~/Desktop/code
django-admin startproject demo
2、工程目录说明
settings.py 项目整体配置文件
urls.py 项目的URL配置文件
wsgi.py 项目已WSGI兼容的web服务器入口
manage.py 项目管理文件,通过它管理项目
3、运行开发服务器
python manage.py runserver ip:端口
或者:
python manage.py runsever
三、运行开发服务器
python manage.py runserver ip:端口
或者:
python manage.py runserver
不写ip和端口,默认127.0.0.1 端口8000
django默认工作在调试debug模式下,如果增加、修改、删除文件,服务器会自动重启
ctrl+c停止服务器。
四、创建app
类似于flask中的蓝图,django的视图编写实在子应用中的
1、创建
在django中,可以通过命令创建应用模块
python manage.py startapp 子应用名称
例如:
cd ~/Desktop/code/demo
python manage.py startapp users
在工程目录下创建了users的子app
2、app文件说明
admin.py 文件跟网站后台管理站点配置相关
apps.py 文件用于配置当前子应用的相关信息
migrations 存放数据库迁移历史文件
models.py 保存数据库模型类
tests.py 测试用例,编写单元测试
views.py web应用视图
3、注册安装子应用
在工程配置文件setting中,INSTALLED_APPS添加apps.py的Config
'users.apps.UsersConfig'
五、创建视图
1、在users中的views里
from django.http import HttpResponse
def index(request):
"""
index视图
:param request: 包含了请求信息的请求对象
:return: 响应对象
"""
return HttpResponse("hello the world!")
2、定义路由URL
2.1子应用创建urls.py文件保存路由
2.2 在users/urls.py文件中定义路由信息
from django.conf.urls import url
from . import views
# urlpatterns是被django自动识别的路由列表变量
urlpatterns = [
# 每个路由信息都需要使用url函数来构造
# url(路径, 视图)
url(r'^index/$', views.index),
]
2.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/。
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)), # 添加应用的路由
]
2.4 启动应用
python manage.py runserver
六、配置文件
1、BASE_DIR
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
当前工程根目录,DJango来定位工程内部的相关文件
2、DEBUG
调试模式,创建工程初始化为True
调试模式会返回报错信息,非调试只会返回500
注意:部署上线的Django的DEBUG=False
3、本地语言与时区
Django支持本地化处理,显示语言与时区支持本地化
初始化的工程默认语言和时区为英语和UTC标准时区
LANGUAGE_CODE = 'en-us' # 语言
TIME_ZONE = 'UTC' # 时区
将语言和时区修改为中国大陆信息
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
4、静态文件
为了提供静态文件,需要配置两个参数:
STATICFILES_DIRS存放查找静态文件的目录
STATIC_URL 访问静态文件的URL前缀
4.1、项目根目录下创建static_files目录保存静态文件
4.2、修改setting.py中静态文件的两个参数
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static_files'),
]
4.3、此时在static_files添加任何静态文件都可以使用 ip+端口+/static/+文件名绝对路径 来访问static_files中的文件
例如:
127.0.0.1:8000/static/index.html
127.0.0.1:8000/static/goods/detail.html
注意:
Django仅在debug模式下提供静态文件
当生产模式下,不提供静态文件,需要用collectstatic命令手机静态文件并由其他静态文件服务器来提供
七、路由说明: