搜尋是乙個複雜的功能,但對於一些簡單的搜尋任務,我們可以使用 django model 層提供的一些內建方法來完成,比如post.objects.filter()方法。現在我們來為我們的部落格提供乙個簡單的搜尋功能。
整個過程就是這樣,下面來看看 django 如何用實現這些過程。
在部落格上為使用者提供乙個搜尋表單,html 表單**大概像這樣:
檔案位置:templates/base.html
"search" method=
"get"id=
"searchform" action=
"">
<
input
type
="search" name=
"q" placeholder=
"搜尋" required>
="submit"
>
="ion-ios-search-strong"
>
<
/span>
<
/button>
<
/form>
特別注意這裡 中的 name 屬性,當使用者在這個 input 中輸入搜尋內容並提交表單後,鍵入的資料會以鍵值對的形式提交伺服器,這個鍵的名字就是通過 name 屬性指定的。這樣伺服器就可以根據 name 的值來取得使用者輸入的內容。
搜尋的功能將由 search 檢視函式提供,**寫在 blog/views.py 裡:
檔案位置:blog/views.py
from django.contrib import messages
defsearch
(request)
: q = request.get.get(
'q')
ifnot q:
error_msg =
messages.add_message(request, messages.error, error_msg, extra_tags=
'danger'
)return redirect(
'blog:index')
post_list = post.objects.
filter
(q(title__icontains=q)
| q(body__icontains=q)
)return render(request,
'blog/index.html'
,)
有了檢視函式後記得把檢視函式對映到相應了 url,如下。
檔案位置:blog/urls.py
urlpatterns =
[# 其他 url 配置
path(
'search/'
, views.search, name=
'search'),
]
基於Flask實現簡單的部落格系統
這是用flask寫的簡單的部落格系統。blog admin 藍圖目錄 views html模板目錄 admin.py url 視 件 article 藍圖目錄 views html模板目錄 admin.py url 視 件 static 靜態檔案目錄 templates html模板目錄 confi...
HTML的簡單介紹(21)
影象標籤 img 和源屬性 在 html 中,影象由 標籤定義。img 是空標籤,意思是說,它只包含屬性,並且沒有閉合標籤。要在頁面上顯示影象,你需要使用源屬性。src 指 source 源屬性的值是影象的 url 位址。定義影象的語法是 img src url 瀏覽器將影象顯示在文件中影象標籤出現...
2 1 Linux下實現簡單UDP通訊
1.建立socket 1 使用socket函式,socket 組,傳輸型別,協議 2 組包括 目前使用af inet af inet ipv4 af inet6 ipv6 3 傳輸型別 目前實現udp使用sock dgram sock stream 雙向可靠位元組流 sock dgram 支援無連線...