一、manage.py命令選
manage.py是每個Django項目中自動生成的一個用於管理項目的腳本文件,需要通過python命令執行。manage.py接受的是Django提供的內置命令。
內置命令包含
- check
- dbshell
- diffsettings
- flush
- makemigrations
- migrate
- runserver
- shell
- startapp
- startproject
- test
其實有三種方式,可以在cmd窗口中執行Django提供的內置命令:
-
$ django-admin < command> [options]
-
$ python manage.py < command> [options]
-
$ python -m django < command> [options]
其中
1、django-admin是用於管理Django的命令行工具集,當我們成功安裝Django后,在操作系統中就會有這個命令,但是根據安裝方式或者系統環境的不同,你可能需要配置一下調用路徑。在Linux下,該命令一般位於site-packages/django/bin,最好做一個鏈接到/usr/local/bin,方便調用。Windows下可以配置系統環境變量
2、manage.py則是每個Django項目中自動生成的一個用於管理項目的腳本文件,需要在cmd窗口中cd到Django項目的manage.py所在的目錄后通過python命令執行。
其中的command是Django內置的或者你自定義的命令。
當然你可以在在pycharm中啟動manage.py時設置參數。
1. check
檢查整個Django項目是否存在常見問題。
默認情況下,所有應用都將被選中。可以通過提供app的名字檢查指定的應用:
python manage.py check app1
2. diffsettings
python manage.py diffsettings
顯示當前設置文件與Django的默認設置之間的差異。
3. flush
python manage.py flush
從數據庫中刪除所有數據。已應用的遷移不會被清除。只刪除具體數據,不刪除數據表!
如果您希望從空數據庫啟動並重新運行所有遷移,則應該刪除並重新創建數據庫,然后再運行migrate,這樣會連原來的數據表都刪了。
4. makemigrations
python manage.py makemigrations app1 app2
根據檢測到的模型創建新的遷移。遷移的作用,更多的是將數據庫的操作,以文件的形式記錄下來,方便以后檢查、調用、重做等等。尤其是對於Git版本管理,它無法獲知數據庫是如何變化的,只能通過遷移文件中的記錄來追溯和保存。
5. migrate
python manage.py migrate
使數據庫狀態與當前模型集和遷移集同步。說白了,就是將對數據庫的更改,主要是數據表設計的更改,在數據庫中真實執行。例如,新建、修改、刪除數據表,新增、修改、刪除某數據表內的字段等等。
6. runserver
python manage.py runserver
啟用Django為我們提供的輕量級的開發用的Web服務器。默認情況下,服務器運行在IP地址127.0.0.1的8000端口上。如果要自定義服務器端口和地址,可以顯式地傳遞一個IP地址和端口號給它。
python manage.py runserver 127.0.0.1:8080
7. shell
python manage.py shell
啟動帶有Django環境的Python交互式解釋器,也就是命令行環境。默認使用基本的python交互式解釋器。這個命令非常常用,是我們測試和開發過程中不可或缺的部分!
8. startapp
python manage.py startapp app_name
創建新的app。
默認情況下,會在這個新的app目錄下創建一系列文件模版,比如models.py、views.py、admin.py等等。
9. startproject
python manage.py startproject project_name
新建工程。默認情況下,新目錄包含manage.py腳本和項目包(包含settings.py和其他文件)。
10. test
python manage.py test [test_label [test_label ...]]
運行所有已安裝的app的測試代碼。
二、app提供的命令
前面是Django核心提供的命令項,下面則是一些內置app,比如auth等提供的命令項。它們只在對應的app啟用的時候才可用。
changepassword
createsuperuser
clearsessions
collectstatic
三、 共有參數
–pythonpath PYTHONPATH
–settings SETTINGS
–traceback
–verbosity {0,1,2,3}, -v {0,1,2,3}
–no-color