[工具] Window10搭建Django開發環境


一、安裝Python

兩種方式安裝Python:

1)下載Python安裝包,安裝Python

2)下載Anaconda安裝包,安裝Anaconda

安裝完畢后記得添加環境變量,方便執行python命令以及pip命令。

二、創建python虛擬環境

1.新建一個虛擬環境目錄

D:\myvenv1

2.創建虛擬環境

1)進入 D:\myvenv1 目錄

2)執行以下命令

D:\myvenv1>python -m venv .

python -m venv表示創建虛擬環境,"."表示,將當前目錄作為虛擬環境目錄。

創建完畢后,我們可以看到myvenv1目錄下創建了一些文件:

3.激活虛擬環境

1)進入myvenv1/Scripts目錄

2)運行命令:

D:\myvenv1\Scripts>activate

(myvenv1) D:\myvenv1\Scripts>

這樣就進入虛擬環境了,在虛擬環境激活狀態下,我們使用pip安裝的包都會安裝在虛擬環境中。

三、搭建django環境

1.編寫requirements文件

編寫requirements文件是可選操作,通過requirements文件可以批量的安裝我們需要的依賴。當然我們也可以手工安裝每個依賴。

# requirements文件內容
django==2.1.8 pillow numpy

2.安裝依賴

1)退回myvenv1目錄

2)執行命令:

(myvenv1) D:\myvenv1>pip install -r requirements -i https://pypi.douban.com/simple/

這樣,pip就會根據requiremens文件中指定的條目(如果未指定版本,則安裝源提供的最新版)來安裝依賴。

3.創建django項目

(myvenv1) D:\myvenv1>django-admin startproject mypro

(myvenv1) D:\myvenv1>dir
 驅動器 D 中的卷是 新加卷
 卷的序列號是 1CE1-F51B

 D:\myvenv1 的目錄

2020/02/29  16:20    <DIR>          .
2020/02/29  16:20    <DIR>          ..
2020/02/29  16:07    <DIR>          Include
2020/02/29  16:07    <DIR>          Lib
2020/02/29  16:20    <DIR>          mypro
2020/02/29  16:15                61 pip-selfcheck.json
2020/02/29  16:07                89 pyvenv.cfg
2020/02/29  16:17                28 requirements
2020/02/29  16:17    <DIR>          Scripts
               3 個文件            178 字節
               6 個目錄 25,197,617,152 可用字節

4.修改django配置文件

使用sublime或其他編輯器打開mypro項目:

 

 

1)修改語言和時區

# LANGUAGE_CODE = 'en-us'
LANGUAGE_CODE = 'zh-hans'

# TIME_ZONE = 'UTC'
TIME_ZONE = 'Asia/Shanghai'

2)添加STATIC和MEDIA文件路徑

STATIC_URL = '/static/'

STATIC_ROOT = os.path.join(BASE_DIR, 'static') MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

3)修改DEBUG狀態

if os.name == 'nt':  # 如果在windows環境下
    DEBUG = True
else:
    DEBUG = False  # 如果在linux環境下

4)修改數據庫配置

if os.name == 'nt':  # windows環境下
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.sqlite3',
            'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
        }
    }
else:
    # Linux環境下使用mysql
    # mysql數據庫配置

5)修改urls.py文件

修改urls.py文件:

from django.contrib import admin
from django.urls import path

from django.conf import settings from django.conf.urls.static import static


urlpatterns = [
    path('admin/', admin.site.urls),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

5.啟動django

運行命令:

(myvenv1) D:\myvenv1\mypro>python manage.py runserver
Performing system checks...

System check identified no issues (0 silenced).

You have 15 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
February 29, 2020 - 16:32:48
Django version 2.1.8, using settings 'mypro.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

訪問頁面:

 

四、發布環境需要做的事情

1.搜集靜態文件

我們需要將admin等django模塊使用到的靜態文件搜集到static目錄下。

使用命令:

(myvenv1) D:\myvenv1\mypro>python manage.py collectstatic

119 static files copied to 'D:\myvenv1\mypro\static'.

可以看到,django項目根目錄下創建了一個static目錄,里面包含了搜集起來的admin需要的靜態文件(其中包含js、css、圖片等靜態文件)。

2.數據庫遷移

執行命令:

(myvenv1) D:\myvenv1\mypro>python manage.py migrate
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying sessions.0001_initial... OK

 

###

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM