Python實(shí)戰(zhàn)計(jì)劃week4_0_1項(xiàng)目

最后一周,django!

此項(xiàng)目,學(xué)習(xí)虛擬環(huán)境的創(chuàng)建與進(jìn)入,在虛擬環(huán)境中創(chuàng)建django項(xiàng)目,創(chuàng)建django App。

  • 前戲
    1.創(chuàng)建虛擬環(huán)境
    在一個(gè)文件夾下shift+右鍵,打開cmd,輸入python -m venv myproject,這里的myproject是自定義的名字。
D:\vir>python -m venv myproject

然后在該文件夾里,會(huì)有一個(gè)剛創(chuàng)建的myproject文件夾。
2.進(jìn)入虛擬環(huán)境
虛擬環(huán)境建好之后,我們需要通過myproject文件夾里面的Scripts下的activate來(lái)啟動(dòng)它。

D:\vir>myproject\Scripts\activate
(myproject) D:\vir>Scripts\activate   #前面的(myproject)就是顯示我們進(jìn)入成功

3.進(jìn)入虛擬環(huán)境后的準(zhǔn)備
安裝django,因?yàn)槲已b過1.9.7版本,所以讓它在虛擬環(huán)境中也用這個(gè)版本,就不用下載新的了。

(myproject) D:\vir>pip install "django=1.9.7"
...
Installing collected packages: django
Successfully installed django-1.9.7     #成功的標(biāo)志
  • 起步
    1.創(chuàng)建django項(xiàng)目
    前面,我們創(chuàng)建了虛擬環(huán)境,也在虛擬環(huán)境中安裝了django。
    現(xiàn)在,我們進(jìn)入虛擬環(huán)境的文件夾,創(chuàng)建一個(gè)django項(xiàng)目。
(myproject) D:\vir>cd myproject
(myproject) D:\vir\myproject>python django-admin.py startproject my_one

my_one是我自定義的項(xiàng)目的名字,文件夾里也會(huì)多出一些文件:

mysite/
├── manage.py
└── mysite
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

2.文件夾里的manage.py
它是 Django 提供的命令列工具,可以利用它同步資料庫(kù)、建立 app 等等,指令的使用方式如下:

python manage.py <command> [options]
python manage.py -h    #help
  • 讓我們跑起來(lái)!
    1.runserver來(lái)啟動(dòng)發(fā)射
(myproject) D:\vir\myproject>cd my_one  #進(jìn)入django文件夾
(myproject) D:\vir\myproject\my_one>python manage.py runserver

它會(huì)顯示:

Performing system checks...
System check identified no issues (0 silenced).
You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.
August 08, 2016 - 10:58:15
Django version 1.9.7, using settings 'my_one.settings'
Starting development server at http://127.0.0.1:8000/ #看我看我?。?Quit the server with CTRL-BREAK.                      #ctrl+c退出

讓我們進(jìn)入http://127.0.0.1:8000/:

a1.png

2.建立 Django application(app)
2.1按下 CTRL+C,關(guān)閉web server 回到命令列。讓我們利用 startapp建立第一個(gè) Django app -- my_app1:

(myproject) D:\vir\myproject\my_one>python manage.py startapp my_app1

startapp 會(huì)按照你的命名建立一個(gè)同名資料夾和 app 預(yù)設(shè)的檔案結(jié)構(gòu)如下:

my_app1
├── __init__.py
├── admin.py
├── migrations
├── models.py
├── tests.py
└── views.py

2.2將新增的 Django app 加入設(shè)定檔
在前一個(gè)指令,我們透過 Django 命令列工具建立了 my_app1 這個(gè) app。但若要讓 Django 知道要管理哪些 apps,還需再調(diào)整設(shè)定檔。
打開 my_one/settings.py,找到 INSTALLED_APPS,調(diào)整如下:

# my_one/settings.py
...
# Application definition
INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'my_app1',
)

請(qǐng)注意 app 之間有時(shí)候需要特定先后順序。在此,我們將自定的 my_app1 加在最后面。

  • 總結(jié)
    目前為止,我們創(chuàng)建了一個(gè)名為myproject的虛擬環(huán)境,并在里面創(chuàng)建了一個(gè) my_one的django項(xiàng)目,以及一個(gè) my_app1 的 Django app。
my_one
├── manage.py
├── my_one
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── my_app1
    ├── __init__.py
    ├── admin.py
    ├── migrations
    ├── models.py
    ├── tests.py
    └── views.py
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容