Django常用命令介紹

歡迎訪問我的博客:小羊駝的部落閣
在DJango里django-admin.py和manage.py都是Django的命令工具集蛋逾,用于處理系統(tǒng)管理相關(guān)操作,而manage.py是在創(chuàng)建Django工程時(shí)自動(dòng)生成的枝笨,manage.py是對(duì)django-admin.py的簡(jiǎn)單包裝,二者的作用基本一致刊咳。

區(qū)別:
  • 1辕万、django-admin存放在Python的site-packages\django\bin 里枢步,manage.py存放在項(xiàng)目工程文件夾里。

  • 2渐尿、django-admin可以對(duì)不同的項(xiàng)目進(jìn)行設(shè)置醉途,而manege.py只能當(dāng)前的工程有效。

下面我們以manage.py為例涡戳,列出一些常用的命令:

語(yǔ)法:
django-admin <subcommand> [options]
manage.py <subcommand> [options]

subcommand是子命令结蟋;options是可選的

常用子命令:

startproject:創(chuàng)建一個(gè)項(xiàng)目(*)
startapp:創(chuàng)建一個(gè)app(*)
runserver:運(yùn)行開發(fā)服務(wù)器(*)
shell:進(jìn)入django shell(*)
dbshell:進(jìn)入django dbshell
check:檢查django項(xiàng)目完整性
flush:清空數(shù)據(jù)庫(kù)
compilemessages:編譯語(yǔ)言文件
makemessages:創(chuàng)建語(yǔ)言文件
makemigrations:生成數(shù)據(jù)庫(kù)同步腳本(*)
migrate:同步數(shù)據(jù)庫(kù)(*)
showmigrations:查看生成的數(shù)據(jù)庫(kù)同步腳本(*)
sqlflush:查看生成清空數(shù)據(jù)庫(kù)的腳本(*)
sqlmigrate:查看數(shù)據(jù)庫(kù)同步的sql語(yǔ)句(*)
dumpdata:導(dǎo)出數(shù)據(jù)
loaddata:導(dǎo)入數(shù)據(jù)
diffsettings:查看你的配置和django默認(rèn)配置的不同之處
manage.py特有的一些子命令:
createsuperuser:創(chuàng)建超級(jí)管理員(*)
changepassword:修改密碼(*)
clearsessions:清除session

1、help

作用:獲得幫助信息

語(yǔ)法:

顯示幫助信息和可用命令
python manege.py help
顯示可用命令列表
python manege.py help --commands
顯示指定命令的詳細(xì)文檔
python manage.py help  #commands為需要指定顯示的命令

2渔彰、version

作用:獲取到當(dāng)前DJango的版本
語(yǔ)法:
python manage.py version

3嵌屎、check

作用:檢查工程中是否存在錯(cuò)誤(檢查完整性)
語(yǔ)法:
python manage.py check [appname]   #命令后面跟APP名稱

4推正、startproject

作用:創(chuàng)建Django工程
語(yǔ)法:
django-admin startproject name [項(xiàng)目想要存放的路徑]

5、startapp

作用:創(chuàng)建Django應(yīng)用程序
語(yǔ)法:
django-admin startapp name [應(yīng)用想要存放的路徑]
python manage.py startapp name

6宝惰、runserver

作用:在當(dāng)前機(jī)器啟動(dòng)一個(gè)Web服務(wù)器植榕,運(yùn)行Django項(xiàng)目
語(yǔ)法:
#默認(rèn)是8000端口
python manage.py runserver
#指定IP和端口
python manage.py runserver 127.0.0.1:8000
#指定端口
python manage.py runserver 8000

7、shell

作用:?jiǎn)?dòng)一個(gè)交互窗口
語(yǔ)法:
python manage.py shell


#如果想使用ipython尼夺、bpython交互模式的話需要先安裝以上交互工具尊残,安裝命令:pip install ipython
#啟用命令
python manage.py shell --i [ipyhton]

8、migrations

Django通過migrations命令將Models中的任何修改寫入到數(shù)庫(kù)中淤堵,比如:新增加的模型或修改已有的字段等寝衫。

makemigrations

作用:根據(jù)models的變化生成對(duì)應(yīng)的Python代碼,該代碼用于更新數(shù)據(jù)庫(kù)
語(yǔ)法:
python manage.py makemigrations
python manage.py makemigrations [appname]
migrate
作用:將model里的修改應(yīng)用到數(shù)據(jù)庫(kù)
語(yǔ)法:
python manage.py migrate #默認(rèn)是所有的APP的修改應(yīng)用到數(shù)據(jù)庫(kù)
python manage.py migrate [appname] #指定APP的修改應(yīng)用到數(shù)據(jù)庫(kù)
python manage.py migrate [appname] [migrations_name] #將操作恢復(fù)到指定版本
注意:

如果執(zhí)行migrate的命令同時(shí)給了應(yīng)用程序的名字和migtrations名字拐邪,系統(tǒng)會(huì)把數(shù)據(jù)庫(kù)恢復(fù)到之前指定的一個(gè)版本慰毅。

python manage.py migrate myblog 0001_initial #指定blog應(yīng)用恢復(fù)到0001_initial 這個(gè)版本

Django所有的migration信息都保存在django_migrations這個(gè)數(shù)據(jù)庫(kù)表中,如下圖所示:

image

如果想撤銷所有的數(shù)據(jù)庫(kù)更改扎阶,我們可以使用 zero代替 上面的命令:

python manage.py migrate blog zero
高級(jí)用法:

如果數(shù)據(jù)庫(kù)里汹胃,已經(jīng)手動(dòng)更新了數(shù)據(jù)庫(kù),我們只是想設(shè)置當(dāng)前的migration狀態(tài)东臀,就使用下面的命令去實(shí)現(xiàn)着饥,這個(gè)命令并不會(huì)真正的去更新數(shù)據(jù)庫(kù)。

語(yǔ)法:
python manage.py migrate blog zero
sqlmigrate
作用:輸出某一個(gè)migrate對(duì)應(yīng)的SQL語(yǔ)句
語(yǔ)法:
python manage.py sqlmigrate blog 0001_initial
showmigrations
作用:顯示migrations記錄
語(yǔ)法:
python manage.py showmigrations
image

留意:記錄前有[X]的表示已經(jīng)部署到數(shù)據(jù)庫(kù)里去了惰赋,沒有的則顯示 [ ]

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末宰掉,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子谤逼,更是在濱河造成了極大的恐慌贵扰,老刑警劉巖仇穗,帶你破解...
    沈念sama閱讀 217,826評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件流部,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡纹坐,警方通過查閱死者的電腦和手機(jī)枝冀,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)耘子,“玉大人果漾,你說(shuō)我怎么就攤上這事」仁模” “怎么了绒障?”我有些...
    開封第一講書人閱讀 164,234評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)捍歪。 經(jīng)常有香客問我户辱,道長(zhǎng)鸵钝,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,562評(píng)論 1 293
  • 正文 為了忘掉前任庐镐,我火速辦了婚禮恩商,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘必逆。我一直安慰自己怠堪,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,611評(píng)論 6 392
  • 文/花漫 我一把揭開白布名眉。 她就那樣靜靜地躺著粟矿,像睡著了一般。 火紅的嫁衣襯著肌膚如雪损拢。 梳的紋絲不亂的頭發(fā)上嚷炉,一...
    開封第一講書人閱讀 51,482評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音探橱,去河邊找鬼申屹。 笑死,一個(gè)胖子當(dāng)著我的面吹牛隧膏,可吹牛的內(nèi)容都是我干的哗讥。 我是一名探鬼主播,決...
    沈念sama閱讀 40,271評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼胞枕,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼杆煞!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起腐泻,我...
    開封第一講書人閱讀 39,166評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤决乎,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后派桩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體构诚,經(jīng)...
    沈念sama閱讀 45,608評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,814評(píng)論 3 336
  • 正文 我和宋清朗相戀三年铆惑,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了范嘱。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,926評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡员魏,死狀恐怖丑蛤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情撕阎,我是刑警寧澤受裹,帶...
    沈念sama閱讀 35,644評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站虏束,受9級(jí)特大地震影響棉饶,放射性物質(zhì)發(fā)生泄漏脑慧。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,249評(píng)論 3 329
  • 文/蒙蒙 一砰盐、第九天 我趴在偏房一處隱蔽的房頂上張望闷袒。 院中可真熱鬧,春花似錦岩梳、人聲如沸囊骤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)也物。三九已至,卻和暖如春列疗,著一層夾襖步出監(jiān)牢的瞬間滑蚯,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工抵栈, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留告材,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,063評(píng)論 3 370
  • 正文 我出身青樓古劲,卻偏偏與公主長(zhǎng)得像斥赋,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子产艾,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,871評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 已經(jīng)同步到gitbook疤剑,想閱讀的請(qǐng)轉(zhuǎn)到gitbook: Django 1.10 中文文檔 This tutori...
    leyu閱讀 2,694評(píng)論 3 13
  • 點(diǎn)我查看本文集的說(shuō)明及目錄。 本項(xiàng)目相關(guān)內(nèi)容包括: 實(shí)現(xiàn)過程: CH7 創(chuàng)建在線商店 CH8 管理支付和訂單 CH...
    學(xué)以致用123閱讀 3,580評(píng)論 0 6
  • PythonWeb框架要點(diǎn)闷堡、Django介紹隘膘、工程搭建、配置杠览、靜態(tài)文件與路由 1.Python Web 框架要點(diǎn) ...
    Cestine閱讀 1,491評(píng)論 0 6
  • 編寫你的第一個(gè)Django App弯菊,第一章 讓我們用一個(gè)示例來(lái)開始學(xué)習(xí)吧。通過這個(gè)手冊(cè)倦零,我們將帶你參觀如何創(chuàng)建一個(gè)...
    轉(zhuǎn)身丶即天涯閱讀 1,735評(píng)論 0 1
  • 緊接著上一個(gè)教程扫茅,我們接下來(lái)將配置數(shù)據(jù)庫(kù),創(chuàng)建你的第一個(gè)model育瓜,并快速介紹Django自動(dòng)生成的管理站點(diǎn)葫隙。 數(shù)...
    yfmei閱讀 916評(píng)論 0 2