<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Django是基於Python的重量級開源Web框架
Django採用MVT的軟體設計模式,即模型(Model),檢視(View)和模板(Template)
M 表示模型(Model):編寫程式應有的功能,負責業務物件與資料庫的對映(ORM)
T 表示模板 (Template):負責如何把頁面(html)展示給使用者
V 表示檢視(View):負責業務邏輯,並在適當時候呼叫 Model和 Template
使用pycharm建立虛擬環境
在專案開發過程中會下載很多第三方庫,有時不同專案對同一個庫的依賴版本不同,如果所有專案都使用同一個Python環境就會起衝突不便於管理。因此在實際開發中我們會為每一個專案都單獨建立一個python的虛擬環境(虛擬環境會很好地幫助處理各個包之間的隔離問題)
最常用的python虛擬環境管理工具是Virtualenv
我們可以直接使用pycharm工具建立虛擬環境,只需要在建立專案的時候勾選建立虛擬環境即可
按照上述設定建立好專案後會在當前專案根目錄下建立虛擬環境venv
下載Django
點選Pycharm左上角中的【檔案】|【設定】,彈出設定選項視窗
點選"Python直譯器"中的 + 按鈕
安裝完成後,大家可以看到django已經是指定的安裝版本了
在終端上建立Django專案,在虛擬環境中使用django-admin命令建立一個專案
django-admin startproject 專案名稱
效果如下所示:
在生成的目錄結構中,venv目錄是虛擬環境,study_django目錄是專案名稱
在當前目錄建立名為study_django
的目錄,目錄中的內容如下:
study_django/ # 專案根目錄,目錄名可以隨意更換 study_django/ # 專案目錄,python包 __init__.py asgi.py # 相容asgi協定的web伺服器入口檔案 settings.py # 專案組態檔 urls.py # 專案根路由檔案 wsgi.py # 相容wsgi協定的web伺服器入口檔案 manage.py # 管理django專案命令列工具
檔案 | 說明 |
__init__.py | 一個空檔案,告訴Python這個目錄應該被認為是一個Python包 |
asgi.py | 作為專案執行在ASGI相容的Web伺服器上的入口 |
settings.py | Django總的組態檔,可以設定APP、資料庫、中介軟體、模板等諸多選項 |
urls.py | Django預設的路由組態檔,可以在其中include其他路徑下的urls.py |
wsgi.py | Django實現的WSGI介面的檔案,用來處理web請求 |
manage.py | Django程式執行的入口,一個可以用各種方式管理Django專案的命令列工具 |
建立完專案以後,進入到專案根目錄下執行如下命令
python manage.py runserver ip:埠
注意Tips:命令不帶ip和埠引數,服務將預設執行在127.0.0.1:8000
執行命令及執行結果如下所示:
執行成功後在瀏覽器存取http://127.0.0.1:8000/
將會看到Django歡迎頁面
上述的歡迎頁面是英文的,Django框架做了國際化,我們只需要在study_django/settings中修改如下設定,即可設定好中文和正確的時區
# 語言設定為中午 LANGUAGE_CODE = 'zh-hans' # 時區設定為亞洲上海 TIME_ZONE = 'Asia/Shanghai'
再次存取http://127.0.0.1:8000/
,歡迎頁面如下:
在Django專案中,推薦使用應用來完成不同模組的任務
一個專案可以包含多個應用,而一個應用也可以在多個專案中使用
在Django中,每一個應用都是一個python包,並且遵循著相同的約定和結構
Django 自帶一個工具,可以幫你生成應用的基礎目錄結構,這樣你就能專心寫程式碼,而不是建立目錄了
專案和應用有什麼區別?
簡單理解為一個專案即是一個網站,一個應用就是這個網站的某一個功能板塊
如果服務已經啟動,先按下<Ctrl + c>組合鍵關閉服務,然後在專案根目錄下執行如下命令
python manage.py startapp 應用名
效果如下所示:
在生成的目錄結構中,study_django目錄下又多了一個article目錄
檔案 | 說明 |
__init__.py | 一個空檔案,告訴Python這個目錄應該被認為是一個python包 |
migrations | 執行資料庫遷移生成的指令碼 |
admin.py | 設定Django管理後臺的檔案 |
apps.py | 單獨設定新增的每個app的檔案 |
models.py | 建立資料庫資料模型物件的檔案 |
tests.py | 用來編寫測試指令碼的檔案 |
views.py | 用來編寫檢視控制器的檔案 |
建立完article應用以後,它不會立即生效,需要在專案組態檔blog/settings.py中啟用應用
程式碼如下所示:
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # 新增程式碼,啟用article應用 'article.apps.ArticleConfig', ]
通常INSTALLED_APPS預設包括以下Django自帶的應用,這些應用被預設啟動是為了常規專案提供方便
django.contrib.admin:管理員站點
django.contrib.auth:認證授權系統
django.contrib.contenttypes:內容型別框架
django.contrib.sessions:對談框架
django.contrib.messages:訊息方塊架
django.contrib.staticfiles:管理靜態檔案的框架
到此這篇關於Django專案建立的範例程式碼的文章就介紹到這了,更多相關Django專案建立內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45