Django學習記錄(2) 創(chuàng)建第一個app

之前已經(jīng)創(chuàng)建完成了第一個project和app, 接下來說一下創(chuàng)建完成后該怎么做, 主要參考一下的是官方文檔

project和app的區(qū)別

官方文檔上是這樣說的:

What’s the difference between a project and an app? An app is a Web application that does something – e.g., a Weblog system, a database of public records or a simple poll app. A project is a collection of configuration and apps for a particular website. A project can contain multiple apps. An app can be in multiple projects.

一個app是用來完成一些特定功能的, 比如一個博客系統(tǒng), 一個簡單的投票系統(tǒng)等等,而一個項目是一些應用的集合. 簡單來說, 一個項目可以包含多個app, 一個app也是可以在多個項目中使用的

polls/views

接下來寫第一個view函數(shù), 在polls/views.py文件中:

from django.http import HttpResponse


def index(request):
    return HttpResponse("主頁")

這是最簡單的一個view視圖函數(shù)了

polls/urls

使用startapp是沒有urls.py這個文件的, 所以需要自己create一個,
然后這樣寫:

from django.conf.urls import url
from . import views

urlpatterns = [
    url(r'^$', views.index, name="index")
]

The next step is to point the root URLconf at the polls.urls module.

接下來要在mysite的urls.py中指向poll.urls

from django.conf.urls import url, include
from django.contrib import admin

urlpatterns = [
    url(r'^polls/', include('polls.urls')),
    url(r'^admin/', admin.site.urls),
]

incldue()函數(shù)允許引用其他的URLconfs, 但是注意使用include的時候, 正則表達式不要以$ 結束, 而是應該以/ 結束, 因為:

it chops off whatever part of the URL matched up to that point and sends the remaining string to the included URLconf for further processing.

因為會將前面的匹配部分去掉, 將剩余的部分發(fā)送到include的URLconfs中

接下來運行一下, 在localhost:8000/polls就可以看見主頁兩個字了

When to use include()?

You should always use include() when you include other URL patterns. admin.site.urls is the only exception to this.

只要有其他的url patterns的時候, 就應該使用include, 除了admin.site.urls,
我使用版本和看的官方文檔的版本都是1.11, 所以如果看到include(admin.site.urls)的情況, 是因為版本不同

深入url()方法

url()函數(shù)有兩個必須的參數(shù), regex和view, 還有兩個參數(shù), kwargs和name

url() argument: regex

顯然, 這里是一個正則表達式, 這里是用來匹配url的

Django starts at the first regular expression and makes its way down the list, comparing the requested URL against each regular expression until it finds one that matches.

django會從第一個正則表達式開始, 一個個去匹配, 直到匹配到

Note that these regular expressions do not search GET and POST parameters, or the domain name.

注意這些正則表達式是不會匹配GET或者POST, 也不會匹配域名, 舉個栗子:

https://www.example.com/myapp/ 的結果是myapp/, https://www.example.com/myapp?page=6 的結果也是myapp/

這些正則表達式在第一次加載URLconf模塊的時候就被編譯, 它們很快

url() argument: view

當正則表達式匹配到的時候, 就會調用指定的view函數(shù)

url() argument: kwargs

Arbitrary keyword arguments can be passed in a dictionary to the target view.

這個估計暫時不會用到

url() argument: name

Naming your URL lets you refer to it unambiguously from elsewhere in Django, especially from within templates. This powerful feature allows you to make global changes to the URL patterns of your project while only touching a single file.

命名url后可以在django其他地方引用

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市胆数,隨后出現(xiàn)的幾起案子欧漱,更是在濱河造成了極大的恐慌阔逼,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異医舆,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進店門蔬将,熙熙樓的掌柜王于貴愁眉苦臉地迎上來爷速,“玉大人,你說我怎么就攤上這事霞怀”苟” “怎么了?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵毙石,是天一觀的道長凿蒜。 經(jīng)常有香客問我,道長胁黑,這世上最難降的妖魔是什么废封? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮丧蘸,結果婚禮上漂洋,老公的妹妹穿的比我還像新娘。我一直安慰自己力喷,他們只是感情好刽漂,可當我...
    茶點故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著弟孟,像睡著了一般贝咙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拂募,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天庭猩,我揣著相機與錄音,去河邊找鬼陈症。 笑死蔼水,一個胖子當著我的面吹牛,可吹牛的內容都是我干的录肯。 我是一名探鬼主播趴腋,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼论咏!你這毒婦竟也來了优炬?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤厅贪,失蹤者是張志新(化名)和其女友劉穎蠢护,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體卦溢,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡糊余,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年秀又,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贬芥。...
    茶點故事閱讀 38,626評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡吐辙,死狀恐怖,靈堂內的尸體忽然破棺而出蘸劈,到底是詐尸還是另有隱情昏苏,我是刑警寧澤,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布威沫,位于F島的核電站贤惯,受9級特大地震影響,放射性物質發(fā)生泄漏棒掠。R本人自食惡果不足惜孵构,卻給世界環(huán)境...
    茶點故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望烟很。 院中可真熱鬧颈墅,春花似錦、人聲如沸雾袱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽芹橡。三九已至毒坛,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間林说,已是汗流浹背煎殷。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留述么,地道東北人蝌数。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像度秘,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子饵撑,可洞房花燭夜當晚...
    茶點故事閱讀 43,494評論 2 348

推薦閱讀更多精彩內容