django-admin.py startproject project_name 特別是在 windows 上,若是報錯,嘗試用 django-admin 代替 django-admin.py 試試
注意 project_name 是本身的項目名稱,須要爲合法的 Python 包名,如不能爲 1a 或 a-b。html
要先進入項目目錄下,cd project_name 而後執行下面的命令(下同,已經在項目目錄下則不須要 cd project_name)python
python manage.py startapp app_name 或 django-admin.py startapp app_name
通常一個項目有多個app, 固然通用的app也能夠在多個項目中使用。shell
與項目名相似 app name 也須要爲合法的 Python 包名,如 blog,news, aboutus 等都是合法的 app 名稱。數據庫
Django 1.7.1及以上 用如下命令 # 1. 建立更改的文件 python manage.py makemigrations # 2. 將生成的py文件應用到數據庫 python manage.py migrate 舊版本的Django 1.6及如下用 python manage.py syncdb
備註:對已有的 models 進行修改,Django 1.7以前的版本的Django都是沒法自動更改表結構的,不過有第三方工具 south,詳見 Django 數據庫遷移 一節。這種方法能夠在SQL等數據庫中建立與models.py代碼對應的表,不須要本身手動執行SQL。django
開發服務器,即開發時使用,通常修改代碼後會自動重啓,方便調試和開發,可是因爲性能問題,建議只用來測試,不要用在生產環境。json
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
python manage.py flush
此命令會詢問是 yes 仍是 no, 選擇 yes 會把數據所有清空掉,只留下空表。windows
python manage.py createsuperuser # 按照提示輸入用戶名和對應的密碼就行了郵箱能夠留空,用戶名和密碼必填 # 修改 用戶密碼能夠用: python manage.py changepassword username
python manage.py dumpdata appname > appname.json python manage.py loaddata appname.json
關於數據操做 詳見:數據導入數據遷移,如今瞭解有這個用法就能夠了。服務器
python manage.py shell
這個命令和 直接運行 python 或 bpython 進入 shell 的區別是:你能夠在這個 shell 裏面調用當前項目的 models.py 中的 API,對於操做數據,還有一些小測試很是方便。若是你安裝了 bpython 或 ipython 會自動用它們的界面,推薦安裝 bpython。app
python manage.py dbshell
在這個終端能夠執行數據庫的SQL語句。若是您對SQL比較熟悉,可能喜歡這種方式。Django 會自動進入在settings.py中設置的數據庫,若是是 MySQL 或 postgreSQL,會要求輸入數據庫用戶密碼。工具
終端上輸入 python manage.py 能夠看到詳細的列表,在忘記子名稱的時候特別有用。