這篇文章主要講解了Django博客如何實(shí)現(xiàn)簡(jiǎn)單的全文搜索,內(nèi)容清晰明了,對(duì)此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會(huì)有幫助。
創(chuàng)新互聯(lián)是一家專業(yè)提供霍城企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、html5、小程序制作等業(yè)務(wù)。10年已為霍城眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。作者:HelloGitHub-追夢(mèng)人物
文中所涉及的示例代碼,已同步更新到 HelloGitHub-Team 倉(cāng)庫(kù)
搜索是一個(gè)復(fù)雜的功能,但對(duì)于一些簡(jiǎn)單的搜索任務(wù),我們可以使用 Django Model 層提供的一些內(nèi)置方法來完成。現(xiàn)在我們來為我們的博客提供一個(gè)簡(jiǎn)單的搜索功能。
概述
博客文章通常包含標(biāo)題和正文兩個(gè)部分。當(dāng)用戶輸入某個(gè)關(guān)鍵詞進(jìn)行搜索后,我們希望為用戶顯示標(biāo)題和正文中含有被搜索關(guān)鍵詞的全部文章。整個(gè)搜索的過程如下:
整個(gè)過程就是這樣,下面來看看 Django 如何用實(shí)現(xiàn)這些過程。
將關(guān)鍵詞提交給服務(wù)器
先來回顧一下我們的 Django 博客的 Post(文章)模型:
blog/models.py
class Post(models.Model): # 標(biāo)題 title = models.CharField("標(biāo)題", max_length=70) # 正文 body = models.TextField("正文") # 其他屬性... def __str__(self): return self.title