更新時(shí)間:2021-05-28 來(lái)源:黑馬程序員 瀏覽量:
(1)問(wèn)題分析
面試官主要想考察的是在網(wǎng)頁(yè)應(yīng)用中,需要在處理完表單或其它類(lèi)型的用戶(hù)輸入后,顯示一個(gè)通知消息(也叫做“flash message”)給用戶(hù)。
(2)核心問(wèn)題講解
Django后臺(tái)可以使用django-push-notifications 推送模塊來(lái)進(jìn)行消息推送,也可以在Django中使用Message框架向模板中推送消息內(nèi)容。(https://yiyibooks.cn/xx/django_182/ref/contrib/messages.html)
App中的推送有兩種方式,第一種是自己研發(fā)的,但由于研發(fā)成本高,所以大多數(shù)都采用第二種方式,也就是使用第三方工具進(jìn)行推送,比如極光推送、個(gè)推、百度云推送、華為推送等。
(3)問(wèn)題擴(kuò)展
App有本地推送和遠(yuǎn)程推送。
本地推送通知:本地通知不需要連接網(wǎng)絡(luò),一般是開(kāi)發(fā)人員在合適的情況下在App內(nèi)發(fā)送通知,適用于能確定在某個(gè)時(shí)間時(shí)需要提醒用戶(hù)的場(chǎng)景。
遠(yuǎn)程推送通知:遠(yuǎn)程通知必須需要連接網(wǎng)絡(luò),遠(yuǎn)程推送服務(wù)又稱(chēng)為APNs(Apple Push Notification Services),一般是服務(wù)器端發(fā)送通知。
對(duì)于用戶(hù),通知一般是指的推送通知,即本地推送通知和遠(yuǎn)程推送通知。
(4)結(jié)合項(xiàng)目中使用
在視圖和模板中使用消息,可通過(guò)如下方法:
add_message(request, level, message, extra_tags='', fail_silently=False)
新增一條消息可通過(guò)如下方式:
from django.contrib import messages messages.add_message(request, messages.INFO, 'Hello world.')
有幾個(gè)快捷方法提供標(biāo)準(zhǔn)的方式來(lái)新增消息并帶有常見(jiàn)的標(biāo)簽(這些標(biāo)簽通常表示消息的HTML 類(lèi)型),具體如下所示。
messages.debug(request, '%s SQL statements were executed.' % count) messages.info(request, 'Three credits remain in your account.') messages.success(request, 'Profile details updated.') messages.warning(request, 'Your account expires in three days.') messages.error(request, 'Document deleted.')
猜你喜歡:
什么是單繼承?Python中單繼承的語(yǔ)法格式是怎樣的?