Django 基本命令

Django 基本命令

« Django 環境搭建html

Django 視圖與網址 »python

當前這篇教程考慮了 Django 1.4 - Django 2.0 版本差別。shell

打開 Linux 或 MacOS 的 Terminal (終端)直接在 終端中輸入這些命令(不是 python 的 shell中)數據庫

若是是 windows 用 cmd(開始 搜索 cmd 或者 快捷鍵 win + R,輸入 cmd) 直接在 cmd 上操做。django

1. 新建一個 django project

1json

2windows

django-admin.py startproject project_name服務器

特別是在 windows 上,若是報錯,嘗試用 django-admin 代替 django-admin.py 試試app

注意 project_name 是本身的項目名稱,須要爲合法的 Python 包名,如不能爲 1a 或 a-b。工具

2. 新建 app

要先進入項目目錄下,cd project_name 而後執行下面的命令(下同,已經在項目目錄下則不須要 cd project_name)

1

2

python manage.py startapp app_name

或 django-admin.py startapp app_name

通常一個項目有多個app, 固然通用的app也能夠在多個項目中使用。

與項目名相似 app name 也須要爲合法的 Python 包名,如 blog,news, aboutus 等都是合法的 app 名稱。

3. 建立數據庫表 或 更改數據庫表或字段

1

2

3

4

5

6

7

8

9

Django 1.7.1及以上 用如下命令

# 1. 建立更改的文件

python manage.py makemigrations

# 2. 將生成的py文件應用到數據庫

python manage.py migrate

 

 

舊版本的Django 1.6及如下用

python manage.py syncdb

這種方法能夠在SQL等數據庫中建立與models.py代碼對應的表,不須要本身手動執行SQL。

備註:對已有的 models 進行修改,Django 1.7以前的版本的Django都是沒法自動更改表結構的,不過有第三方工具 south,詳見 Django 數據庫遷移 一節。

4. 使用開發服務器

開發服務器,即開發時使用,通常修改代碼後會自動重啓,方便調試和開發,可是因爲性能問題,建議只用來測試,不要用在生產環境。

1

2

3

4

5

6

7

8

9

10

11

python manage.py runserver

 

# 當提示端口被佔用的時候,能夠用其它端口:

python manage.py runserver 8001

python manage.py runserver 9999

(固然也能夠kill掉佔用端口的進程,具體後面有講,此處想知道的同窗可查下 lsof 命令用法)

 

# 監聽機器全部可用 ip (電腦可能有多個內網ip或多個外網ip)

python manage.py runserver 0.0.0.0:8000

# 若是是外網或者局域網電腦上能夠用其它電腦查看開發服務器

# 訪問對應的 ip加端口,好比 http://172.16.20.2:8000

5. 清空數據庫

1

python manage.py flush

此命令會詢問是 yes 仍是 no, 選擇 yes 會把數據所有清空掉,只留下空表。

6. 建立超級管理員

1

2

3

4

5

6

python manage.py createsuperuser

 

# 按照提示輸入用戶名和對應的密碼就行了郵箱能夠留空,用戶名和密碼必填

 

# 修改 用戶密碼能夠用:

python manage.py changepassword username

7. 導出數據 導入數據

1

2

python manage.py dumpdata appname > appname.json

python manage.py loaddata appname.json

關於數據操做 詳見:數據導入數據遷移,如今瞭解有這個用法就能夠了。

8. Django 項目環境終端

1

python manage.py shell

若是你安裝了 bpython 或 ipython 會自動用它們的界面,推薦安裝 bpython。

這個命令和 直接運行 python 或 bpython 進入 shell 的區別是:你能夠在這個 shell 裏面調用當前項目的 models.py 中的 API,對於操做數據,還有一些小測試很是方便。

9. 數據庫命令行

1

python manage.py dbshell

Django 會自動進入在settings.py中設置的數據庫,若是是 MySQL 或 postgreSQL,會要求輸入數據庫用戶密碼。

在這個終端能夠執行數據庫的SQL語句。若是您對SQL比較熟悉,可能喜歡這種方式。

10. 更多命令

1

終端上輸入 python manage.py 能夠看到詳細的列表,在忘記子名稱的時候特別有用。

更詳細的介紹,點擊對應版本去官網查看: 1.11    1.8    dev

相關文章
相關標籤/搜索