创建Django项目
1.创建一个运行Django项目的虚拟环境(virtualenv)
-
virtualenv --no-site-packages [-p C:\Python36\python.exe] env1
-
进入虚拟环境激活:
cd D:\file\env\env1\Scripts 进入到创建的虚拟环境目录env1下的Scripts
activate 激活虚拟环境
先在虚拟环境中安装django库pymysql等等需要的库
pip install Django==1.11
pip install PyMySQL
2.创建一个Django项目
2.1 创建项目
1.进入工作空间目录workspace:
django-admin startproject helloWorld (需要事先安装django包) 创建一个名为helloWorld的工程
2.项目目录介绍 下面展示创建以后的文件,具体有哪些文件:
manage.py: 是Django用于管理本项目的管理集工具,之后站点运行,数据库自动生成,数据表的修改等都是通过该文件完成。
init.py: 指明该目录结构是一个python包,暂无内容,在后期会初始化一些工具会使用到。
seetings.py: Django项目的配置文件,其中定义了本项目的引用组件,项目名,数据库,静态资源,调试模式,域名限制等
urls.py:项目的URL路由映射,实现客户端请求url由哪个模块进行响应。
wsgi.py:定义WSGI接口信息,通常本文件生成后无需改动
2.2 运行Django项目
-
运行项目
python manage.py runserver 端口 该命令是运行项目,端口可以不用写,启动的时候会默认随机创建一个可以使用的端口
-
创建app
python manage.py startapp hello_app 该命令是在blog工程下创建一个名为hello_app的app
-
settings.py配置文件
-
添加app
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'hello_app', # 添加app
]
-
配置数据库
1.安装pymysql作为mysql驱动:
#在项目目录下的__init__.py文件中初始化配置
import pymysql
pymysql.install_as_MySQLdb() #安装pymysql作为mysql驱动2.配置:
-
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 引擎,数据库类型
'NAME': 'db_name', # 数据库名
'USER':'root', # 用户名
'PASSWORD': '450502', # 密码
'HOST': '127.0.0.1', # ip
'PORT': 3306 # 端口
}
} -
配置redis
-
# redis配置 CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://127.0.0.1:6379/", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", # 'PASSWORD': '', 密码配置 } } }
-
配置模板templates查找路径
TEMPLATES = [
{
.....
'DIRS': [os.path.join(BASE_DIR,'templates')], # 配置模板路径
.....
}, -
配置static静态文件查找路径
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR,'static')
]
-
其他默认设置
a) 设置语言: LANGUAGE_CODE = 'zh-hans' 表示中文 LANGUAGE_CODE = 'en-us' 表示英文图
设置时区: TIME_ZONE = 'Asia/Shanghai'
b) 时区解释: (需要详细回顾思考时区问题) UTC:世界标准时间,也就是平常说的零时区。 北京时间表示东八区时间,即UTC+8
c)配置根路由
ROOT_URLCONF = 'helloWord.urls'
4.urls配置
-
默认到根路由urls匹配
urlpatterns = [
path('admin/', admin.site.urls),
path('app/',app),
path('goods/',goods'))
] -
路由分发
当有多个应用app都有自己单独的urls时,先从根路由urls查找起,在到分路由urls下继续匹配路由
根路由配置:
urlpatterns = [
path('admin/', admin.site.urls),
# 路由分发
# http://127.0.0.1:8033/app/hello/
path('app/',include('app.urls')),
path('goods/',include('goods.urls'))
]分路由配置:
urlpatterns = [
path('hello/', hello),
]
创建模型
python manage.py makemigrations
python manage.py migrate
作者: Deaseyy
出处: http://www.cnblogs.com/Deaseyy/
新手一枚,请大佬们多多赐教!
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接