大體過程:創建虛擬環境-->安裝django-->創建django項目-->創建app-->創建超級用戶
win10系統,裝的是Django version 3.0.4
1、新建mysite2目錄,打開cmd終端,切換到mysite2目錄
2、創建虛擬環境(名稱為djldjango):
python –m venv djldjango
3、激活虛擬環境:
djldjango\Scripts\activate
如果需要,停止使用虛擬環境:
(djldjango) C:\Users\lori\Desktop\python52project\mysite2>deactivate
4、安裝Django:
(djldjango) C:\Users\lori\Desktop\python52project\mysite2>pip install Django
5、在Django中創建項目(項目名稱mysite;在win10中用django-admin.exe;還有末尾的’.’):
(djldjango) C:\Users\lori\Desktop\python52project\mysite2>django-admin.exe startproject mysite .
創建成功會多出mysite目錄和manage.py
6、創建數據庫(即遷移數據庫的首次使用):
(djldjango) C:\Users\lori\Desktop\python52project\mysite2>python manage.py migrate
創建成功會多出db.sqlite3
7、啟動服務
(djldjango) C:\Users\lori\Desktop\python52project\mysite2>python manage.py runserver
至此,我們打開瀏覽器,訪問http://127.0.0.1:8000/,會看到django框架的網頁
8、創建app(名稱為ganji):
(djldjango) C:\Users\lori\Desktop\python52project\mysite2>python manage.py startapp ganji
創建成功會多出ganji文件夾
9、激活app:
(1)在mysite2\mysite目錄下的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:\Users\lori\Desktop\python52project\mysite2>python manage.py makemigrations ganji
No changes detected in app 'ganji'
(djldjango) C:\Users\lori\Desktop\python52project\mysite2>python manage.py migrate
10、創建超級用戶:
(djldjango) C:\Users\lori\Desktop\python52project\mysite2>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',
],
},
},
]
