使用pycharm社區(qū)版新建Django項(xiàng)目

基本環(huán)境:

  • 安裝好pyCharm社區(qū)版
  • 使用 pip install Django安裝好Django

步驟1:使用pyCharm新建項(xiàng)目

image

步驟2:新建Django項(xiàng)目

命令django-admin startproject project_name


步驟3:新建項(xiàng)目下的app

理論上這個(gè)時(shí)候如果使用指令python manage.py runserver 8000即可以成功啟動(dòng)Django內(nèi)置服務(wù)器

注意:

  • manage.py文件所在目錄的命令行去使用該指令梨水;

  • 你可以直接再該指令后跟需要監(jiān)聽的端口號(hào);

  • 用于開發(fā)的服務(wù)器在需要的情況下會(huì)對(duì)每一次的訪問(wèn)請(qǐng)求重新載入一遍 Python 代碼疫诽。所以你不需要為了讓修改的代碼生效而頻繁的重新啟動(dòng)服務(wù)器。然而旦委,一些動(dòng)作奇徒,比如添加新文件,將不會(huì)觸發(fā)自動(dòng)重新加載缨硝,這時(shí)你得自己手動(dòng)重啟服務(wù)器摩钙。
    新建app命令python manage.py startapp app_name


步驟4:在項(xiàng)目下新建 templates 路徑

注意:
此目錄下即用來(lái)存放我們的html文件;

  • 此目錄一般是與app的主目錄是平級(jí)的查辩。當(dāng)然也可以建立在app的目錄下胖笛,主要取決于你的模板网持,一般是全局使用呢,還是專門服務(wù)于某個(gè)app长踊;
    請(qǐng)務(wù)必查看項(xiàng)目設(shè)置中是否已設(shè)置自動(dòng)檢索此目錄功舀,方法如下:
  1. 打開項(xiàng)目中的 settings.py 文件
  2. 找到變量 TEMPLATES ,確認(rèn)其鍵名為 DIRS 的鍵值是否為:[os.path.join(BASE_DIR, 'templates')]

步驟5:在項(xiàng)目下新建 static 路徑

  • 此目錄下即用來(lái)存放我們的靜態(tài)文件:img、css等身弊;
  • 此目錄一般是與app的主目錄是平級(jí)的辟汰,也可自行選擇目錄;
  • 請(qǐng)務(wù)必查看項(xiàng)目設(shè)置中是否已設(shè)置自動(dòng)檢索此目錄阱佛,方法如下:
  1. 打開項(xiàng)目中的 settings.py 文件
  2. 末尾處新增變量 STATICFILES_DIRS 并賦值為:[os.path.join(BASE_DIR, 'static')]

步驟6:為MTV模型的各文件建立聯(lián)系

6.1 首先理解下Django的MTV模型
image

我們以 http://127.0.0.1:8000/index 簡(jiǎn)單作下說(shuō)明:
1.用戶提交Request請(qǐng)求:把瀏覽器中url地址提交給Django服務(wù)器
2.Request首先到達(dá)的淡藍(lán)色區(qū)域帖汞,你可以理解為Django項(xiàng)目中的 urls.py 文件上渴,在此文件中會(huì)去根據(jù)你事先在 urlpatterns 列表中定義好的url路徑去確定 index/ 指向哪個(gè) Views文件粹懒,即你編寫好的某個(gè)app目錄下的 views.py 文件
3.views.py 文件中的函數(shù)render(request,'xxx.html',model_Var) 將會(huì)獲取數(shù)據(jù)模型:Models模板網(wǎng)頁(yè):Templates,在三者的共同渲染下债沮,給客戶端返回 Response麦萤,呈現(xiàn)出完整網(wǎng)頁(yè)鹿鳖。

6.2 具體方法
(1)在urls.py 文件中添加路徑
from django.contrib import admin
from django.urls import path
from blog.views import index
urlpatterns = [
   path('admin/', admin.site.urls),
   path('index/', index),
] 
(2)在views.py 文件中構(gòu)造render(request,templates,model)函數(shù)
from django.shortcuts import render
def index(request):
  return render(request, 'index.html')
(3)以上即可以最簡(jiǎn)單的構(gòu)造一個(gè)訪問(wèn),接下來(lái)的步驟將會(huì)說(shuō)明如何使用models.py

步驟7:連接數(shù)據(jù)庫(kù)并使用 models.py

7.1 在Django中連接MongoDB數(shù)據(jù)庫(kù)

Django 模型是與數(shù)據(jù)庫(kù)相關(guān)的壮莹,與數(shù)據(jù)庫(kù)相關(guān)的代碼一般寫在 models.py 中翅帜,Django 支持 sqlite3, MySQL, PostgreSQL,MongoDB等數(shù)據(jù)庫(kù),只需要在settings.py中配置即可命满,不用更改models.py中的代碼涝滴,豐富的API極大的方便了使用。
在 settings.py 中添加設(shè)置:

# 引入mongoengine 以連接MongoDB數(shù)據(jù)庫(kù)
from mongoengine import connect
connect('website', host='127.0.0.1', port='27017')

使用的庫(kù)為 mongoengine胶台,其使用文檔詳見:http://docs.mongoengine.org/tutorial.html

7.2 在 models.py 中書寫ORM數(shù)據(jù)模型
from mongoengine import *
# 引入mongoengine 以連接MongoDB數(shù)據(jù)庫(kù)
from mongoengine import connect
connect('ganji', host='127.0.0.1', port=27017)
 #定義類
class Info(Document):
        cate_name = StringField()
        person = StringField()
        title = StringField()
        cate = StringField()
        post_time = StringField()
        datetime = StringField()
        position = StringField()
        phone = StringField()
        url = StringField()
        price = IntField()
        meta = {
                  'collection': 'info_list2'
              }
 #展示數(shù)據(jù)
  for i in Info.objects[:1]:
          print(i.cate_name)

說(shuō)明
1.類的定義:可以理解為一個(gè)類就是數(shù)據(jù)庫(kù)中文檔(每一行數(shù)據(jù))的模板歼疮,因此繼承于Document
2.其中 meta 屬性中,需要寫明這個(gè)類的指向,即你要訪問(wèn)哪個(gè)collection中的數(shù)據(jù)
3.使用class.objects屬性來(lái)完成對(duì)每個(gè)文檔的遍歷
4.class.objects支持切片操作


步驟8:在views.py中使用models.py 中的數(shù)據(jù)模型

from django.shortcuts import render
 # 從app模塊導(dǎo)入blog中的model文件诈唬,使用其中的Info類
from blog.models import Info
def index(request):
     # 類的實(shí)例化操作
        info=Info.objects[:1]
         context = {
                'info': {
                             'title': info[0].cate_name,
                              'author': info[0].person,
                              'des': info[0].title,
                         }
          }
          return render(request, 'index.html', context)

步驟9:使用Django中的templates語(yǔ)法在網(wǎng)頁(yè)中使用數(shù)據(jù)

轉(zhuǎn)載于:http://www.reibang.com/p/ea7632c32d63

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末韩脏,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子铸磅,更是在濱河造成了極大的恐慌赡矢,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,284評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件阅仔,死亡現(xiàn)場(chǎng)離奇詭異吹散,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)八酒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門空民,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人丘跌,你說(shuō)我怎么就攤上這事袭景⊙渥” “怎么了?”我有些...
    開封第一講書人閱讀 164,614評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵耸棒,是天一觀的道長(zhǎng)荒澡。 經(jīng)常有香客問(wèn)我,道長(zhǎng)与殃,這世上最難降的妖魔是什么单山? 我笑而不...
    開封第一講書人閱讀 58,671評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮幅疼,結(jié)果婚禮上米奸,老公的妹妹穿的比我還像新娘。我一直安慰自己爽篷,他們只是感情好悴晰,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著逐工,像睡著了一般铡溪。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上泪喊,一...
    開封第一講書人閱讀 51,562評(píng)論 1 305
  • 那天棕硫,我揣著相機(jī)與錄音,去河邊找鬼袒啼。 笑死哈扮,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蚓再。 我是一名探鬼主播滑肉,決...
    沈念sama閱讀 40,309評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼摘仅!你這毒婦竟也來(lái)了赦邻?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,223評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤实檀,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后按声,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體膳犹,經(jīng)...
    沈念sama閱讀 45,668評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評(píng)論 3 336
  • 正文 我和宋清朗相戀三年签则,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了须床。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,981評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡渐裂,死狀恐怖豺旬,靈堂內(nèi)的尸體忽然破棺而出钠惩,到底是詐尸還是另有隱情,我是刑警寧澤族阅,帶...
    沈念sama閱讀 35,705評(píng)論 5 347
  • 正文 年R本政府宣布篓跛,位于F島的核電站,受9級(jí)特大地震影響坦刀,放射性物質(zhì)發(fā)生泄漏愧沟。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評(píng)論 3 330
  • 文/蒙蒙 一鲤遥、第九天 我趴在偏房一處隱蔽的房頂上張望沐寺。 院中可真熱鬧,春花似錦盖奈、人聲如沸混坞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)究孕。三九已至,卻和暖如春场钉,著一層夾襖步出監(jiān)牢的瞬間蚊俺,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工逛万, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留泳猬,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,146評(píng)論 3 370
  • 正文 我出身青樓宇植,卻偏偏與公主長(zhǎng)得像得封,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子指郁,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評(píng)論 2 355

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