2-django配置
一、settings.py配置
1、时区配置
现在看到的界面是英文的,将
1 LANGUAGE_CODE = 'en-us' 改为 LANGUAGE_CODE = 'zh-Hans
'就可以看到如下界面
将
TIME_ZONE = 'UTC' '''设置成''' TIME_ZONE = 'Asia/Shanghai'
USE_TZ = True'''改为'''USE_TZ = False
这样保证后期不用再处理时间了。
2、数据库配置
sqlite不适用于开发(我不会),所以注释掉,换成:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql',#数据可引擎 'NAME': 'python',#数据库名称 'USER':'root',#用户 'PASSWORD':'123456',#密码 'HOST':'127.0.0.1',#地址,别写成localhost,可能会出错,我没试 'PORT':'3306',#端口号 } }
重新启动服务器,如果报错则在你的虚拟环境下 运行:pip install mysqlclient
安装完之后进入python环境中运行import MySQLdb,没报错就是安装成功
3、其余配置
ALLOWED_HOSTS = ['*']#任何网络地址都可以访问本项目 在你的MIDDLEWARE一定要有'django.middleware.csrf.CsrfViewMiddleware',不然服务器会拒绝你发出的post请求
4、模板配置
TEMPLATES中的DIR数组中加入 os.path.join(BASE_DIR, 'templates'),你的html模板放在这个里面,索引的时候会索引这个目录,
'APP_DIRS': True,配置这个为True,会在各大app的文件里面索引上面配置的模板文件夹里的文件
5、静态路径配置
在你的STATIC_URL='/static/'下加
STATICFILES_DIRS=[ os.path.join(BASE_DIR,'静态文件夹'), ]#配置你的静态文件存储路径
二、数据库迁移
启动数据库服务,执行数据库迁移命令
python manage.py migrate
mirgate在项目中创建了admin,auth等表,
再次执行:python manage.py makemigrations
和python manage.py migrate
数据库的每次迁移和修改都要再次执行makemigrations命令,执行migrate使之生效
三、创建超级管理员管理后台
执行:python manage.py createsuperuser --username=你的名字 --email=你的邮箱
创建超级用户
会提示输入密码和确认密码
项目启动,浏览器访问http://127.0.0.1:8000/admin;输入你设置的的账号密码
四、创建应用
到此为止,项目的骨架,数据库配置和数据迁移已经配置完成了,接下来改创建应用了,执行:
python manage.py startapp app名称
此过程不会有任何信息,你会在你项目的根目录下看见一个叫做app名称的目录,结构如下
migrations 用于存储Model.py的定义和修改
migrations/__init__.py 文件表示这你得migrations是一个python包
__init__.py 文件表示这你得app是一个python包
admin.py 用于将Model定义注册到管理后台,是Django Admin的应用的配置文件
apps.py 应用程序本身的配置
models.py 定义应用中所需要的数据表
tests.py 用于编写当前应用的测试单元
views.py 编写应用的全部视图
五、requirements.txt文件
此文件当前项目的环境依赖,该文件用于当你的app进行安装,卸载,升级等时,快速为你构建环境。进入根目录执行:
pip freeze > requirements.txt 完成快速创建
你的requirements.txt会有如下信息: Django==2.0.7 mysqlclient==1.4.5 PyMySQL==0.9.3 pytz==2019.3 sqlparse==0.3.0 virtualenv==16.7.7
将来需要重构项目环境的时候执行:
pip install -r requirements.txt