大体过程:创建虚拟环境-->安装django-->创建django项目-->创建app-->创建超级用户
win10系统,装的是Django version 3.0.4
1、新建mysite2目录,打开cmd终端,切换到mysite2目录
2、创建虚拟环境(名称为djldjango):
python –m venv djldjango
3、激活虚拟环境:
djldjangoScriptsactivate
如果需要,停止使用虚拟环境:
(djldjango) C:UsersloriDesktoppython52projectmysite2>deactivate
4、安装Django:
(djldjango) C:UsersloriDesktoppython52projectmysite2>pip install Django
5、在Django中创建项目(项目名称mysite;在win10中用django-admin.exe;还有末尾的’.’):
(djldjango) C:UsersloriDesktoppython52projectmysite2>django-admin.exe startproject mysite .
创建成功会多出mysite目录和manage.py
6、创建数据库(即迁移数据库的首次使用):
(djldjango) C:UsersloriDesktoppython52projectmysite2>python manage.py migrate
创建成功会多出db.sqlite3
7、启动服务
(djldjango) C:UsersloriDesktoppython52projectmysite2>python manage.py runserver
至此,我们打开浏览器,访问http://127.0.0.1:8000/,会看到django框架的网页
8、创建app(名称为ganji):
(djldjango) C:UsersloriDesktoppython52projectmysite2>python manage.py startapp ganji
创建成功会多出ganji文件夹
9、激活app:
(1)在mysite2mysite目录下的settings.py文件中,加上新创建的app名称'ganji':
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
#My apps
'ganji', #加上这一句
]
(2)在终端中执行(因为ganji app数据模型没有改动,所以这2句可以不用):
(djldjango) C:UsersloriDesktoppython52projectmysite2>python manage.py makemigrations ganji
No changes detected in app 'ganji'
(djldjango) C:UsersloriDesktoppython52projectmysite2>python manage.py migrate
10、创建超级用户:
(djldjango) C:UsersloriDesktoppython52projectmysite2>python manage.py createsuperuser
Username (leave blank to use 'lori'):
Email address: XXXX@163.com
Password:
Password (again):
Superuser created successfully.
11、开启服务python manage.py runserver后,可访问管理页面:http://127.0.0.1:8000/admin/
输入用户名密码即可登录。
问题排查:
1、新建templates目录(与ganji目录并列),在templates里写好index.html文件,启动django却加载不上,需要在settings.py文件TEMPLATES字段中加上'DIRS': [os.path.join(BASE_DIR,'templates')], #原来'DIRS':[],默认的位置是在app目录下的templates.
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS':
[os.path.join(BASE_DIR,'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]