范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

Django4。xMessage消息使用示例和配置方法

  Django提供了基于 Cookie 或者 Session 的消息框架 Message,不管是匿名用户还是认证的用户,这个消息框架允许临时将消息存储在 Request请求中,并在接下来的请求(通常就是下一个请求)中提取并显示或者进行应用处理。每个消息都带有一个特定的 level 等级标签,表示其优先级(例如 info 、 warning 或 error)。
  Django 从一开始就带有一个称为 Message 消息框架的功能。
  Message 配置
  settings.py 中默认进行配置。 INSTALLED_APPS = [     ......     "django.contrib.messages",     ...... ]应用调试
  views.py 添加消息,直接使用message的add_messages方法 from django.contrib import messages add_message(request, level, message, extra_tags="", fail_silently=False)  # 不启用消息fail_silent =True messages.add_message(request, messages.INFO, "Hello")  # 快捷方式添加 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.")
  前端调用 *.html {% if messages %} 
    {% for message in messages %} {{ message }} {% endfor %}
{% endif %}   Message 参数说明MESSAGE_LEVEL   设置可以用来改变记录的最小级别,小于这个级别的消息将被忽略 Leve1 : DEBUG 将在生产部署中忽略(或删除)的与开发相关的消息 Leve2 : INFO 普通提示信息 Leve3 : SUCCESS 成功信息 Leve4 : WARNING 警告信息 Leve5 : ERROR 已经发生的错误信息 MESSAGE_LEVEL = messages.INFO   views.py 内置方法可以直接导入 from django.contrib.messages import constants as message_constants MESSAGE_LEVEL = message_constants.DEBUGMESSAGE_STORAGEMESSAGE_STORAGE = "django.contrib.messages.storage.fallback.FallbackStorage"   Django 提供了三种内置的消息存储后端:   存储请求会话中的所有消息。 MESSAGE_STORAGE = "django.contrib.messages.storage.session.SessionStorage",   该类将消息数据存储在cookie中(使用秘密散列签名以防止操作),以便在请求之间持久化通知。如果cookie数据大小超过2048字节,则删除旧消息。 MESSAGE_STORAGE = "django.contrib.messages.storage.cookie.CookieStorage",   首先使用 CookieStorage,然后返回到使用 SessionStorage 来存储不能放入单个cookie的消息,还需要Django的contrib.sessions的应用程序。 MESSAGE_STORAGE = "django.contrib.messages.storage.fallback.FallbackStorage",MESSAGE_TAGS   这将消息级别映射到消息标记,该标记通常在HTML中呈现为CSS类。 MESSAGE_TAGS = { # 级别:样式 messages.DEBUG: "debug", # 级别:10 将在生产部署中忽略(或删除)的与开发相关的消息 messages.INFO: "info", # 级别:20 普通提示信息 messages.SUCCESS: "success", # 级别:25成功信息 messages.WARNING: "warning", # 级别:30警告信息 messages.ERROR: "error", # 级别:40 已经发生的错误信息 } from django.contrib.messages import constants as message_constants MESSAGE_TAGS = {message_constants.INFO: ""}   views.py 创建自定义消息级别。 from django.contrib.messages import constants as messages MESSAGE_TAGS = { messages.INFO: "", 50: "critical", # 自定义级别:样式 }常用项目配置   settings.py 项目配置 INSTALLED_APPS = [ ...... "django.contrib.messages", ] MIDDLEWARE = [ ...... "django.contrib.sessions.middleware.SessionMiddleware", # 必须启用 ] TEMPLATES = [ { "BACKEND": "django.template.backends.django.DjangoTemplates", "DIRS": [os.path.join(BASE_DIR, "templates")], "APP_DIRS": True, "OPTIONS": { "context_processors": [ # 这个地方启用 "django.template.context_processors.debug", "django.template.context_processors.request", "django.contrib.auth.context_processors.auth", "django.contrib.messages.context_processors.messages", "django.template.context_processors.media", ], "libraries": "staticfiles": "django.templatetags.static", } }, }, ]   views.py get_messages(request) 获取请求消息。 from django.contrib.messages import get_messages storage = get_messages(request) for message in storage: do_something_with_the_message(message) # 自定义消息级别 # 在MESSAGE_TAGS中的级别不可冲突 CRITICAL = 50 def my_view(request): messages.add_message(request, CRITICAL, "发生严重错误。") # 设置最小级别 set_level() from django.contrib import messages # 修改最小级别为DEBUG messages.set_level(request, messages.DEBUG) messages.debug(request, "Test message...") # 在另外一个视图中修改最小级别为WARNING messages.set_level(request, messages.WARNING) messages.success(request, "Your profile was updated.") # 被忽略,不记录 messages.warning(request, "Your account is about to expire.") # 记录 # 将最小级别恢复到默认值 messages.set_level(request, None) # 获取消息级别 from django.contrib import messages current_level = messages.get_level(request) # 添加额外的消息标签 messages.add_message(request, messages.INFO, "Over 9000!", extra_tags="dragonball") messages.error(request, "Email box full", extra_tags="email")   前端调用 *.html {% if messages %} {% for message in messages %} {% if message.level == DEFAULT_MESSAGE_LEVELS.INFO %} 【信息】:{{ message }} {% endif %} {% if message.level == DEFAULT_MESSAGE_LEVELS.SUCCESS %} 【成功】:{{ message }} {% endif %} {% if message.level == DEFAULT_MESSAGE_LEVELS.WARNING %} 【警告】:{{ message }} {% endif %} {% if message.level == DEFAULT_MESSAGE_LEVELS.ERROR %} 【错误】:{{ message }} {% endif %} {% endfor %} {% endif %}

联想TabP11ProGen2评测硬件不错联想是一个以功能强大的台式电脑和笔记本电脑而闻名的品牌,但它也生产一些用于即时工作和娱乐的不错的平板电脑。尽管平板电脑市场似乎主要被苹果的iPad所主导,但联想TabP11ProGMTT实验的一些细节问题一细胞1。选择适当的细胞接种浓度。一般情况下,96孔培养板的一内贴壁细胞长满时约有105个细胞。但由于不同细胞贴壁后面积差异很大,因此,在进行MTT试验前,要进行预实验检测其贴壁率受骗人数高达200万!GooglePlay上出现安卓恶意软件保贝狗个人信息保护今日给大家分享一组新的安卓恶意软件钓鱼软件和广告软件的应用程序已经渗透到GooglePlay商店,目前已经有200多万人上当,安装使用这些恶意软件。这些应用程序是外媒大众集团CEO将组织讨论新的软件规划车东西(公众号chedongxi)作者迩言编辑晓寒车东西12月6日消息,据路透社报道,大众将在其首席执行官奥利弗布鲁姆召开的会议上就软件计划展开讨论。大众汽车的ID。系列自推出以来外文翻译怎么办?分享这个宝藏软件给你,二十多种语言任你选择相信很多小伙伴都会在生活中遇见各种各样的外文,不管是衣服上的英文字母,日料店里菜单,海淘产品的说明书,或是领导给的英文文件,这些都需要我们用到翻译软件。可市场上的翻译软件鱼龙混杂,双扇加持,稳定高能零刻SEi12高性能迷你电脑体验前言今年的早些时候,英特尔发布了最新的12代移动平台系列产品线,笔者之前也专门撰文进行过对比。简单来说,这次英特尔12代平台的性能提升,相比之前的11代来说非常显著,甚至完全可以用体表肿瘤之皮脂腺囊肿知多少皮脂腺囊肿是由皮脂腺导管堵塞后腺体分泌物积聚所形成的囊肿。临床十分常见,特别是在皮脂分泌旺盛的年青人身上更是常见。皮脂腺囊肿通常好发于头皮及颜面部,颈胸部其次。因内容物的多少呈现大柴胡舒肝丸配一物,化气火痰六郁,消囊肿肌瘤结节大家好,我是贾医生,说起柴胡疏肝丸,我们之前也讲过很多次,他是用来舒肝理气,消胀止痛的,很适用于一些脾气大,整天郁郁寡欢吃不下饭的这类人,那今天就教你用柴胡舒肝丸来化气,火,痰六郁每顿八分饱抑制多种炎症!这个程度就该放下碗筷中国人的养生观念里,关于吃的观点占据半壁江山。其中,不要饱食的思想明朝时期就曾提出。近期,多项研究证实上述观点,并指出吃饭八分饱的好处抑制慢性炎症。生命时报采访专家,解读吃到什么程快测测你是不是巧克力囊肿体质?超高准确度在我40年的临床经验中,发现巧囊的几个特点1。也有潜伏期2。也有易得人群3。也有初期表现,如果你对号入座,发现自己有以下一些特征时,就可能会是巧克力囊肿体质了。一流产过,一旦有过流Redis原理对象的数据结构SDSInsetDictZipListQuickListRedis数据结构1。SDSRedis是用C语言写的,但是对于Redis的字符串,却不是C语言中的字符串(即以空字符结尾的字符数组),它是自己构建了一种名为简单动态字符串(simp
这个春天植得期待!海港球迷重启崇明植树活动,希望球队新赛季取得更好成绩摘要作为球队的新生代力量,两名球员代表刘柏杨陈序煌前往崇明参加了活动。上海海港球迷种植节活动不知不觉来到第7个年头。3月12日植树节当天,海港约百名球迷前往位于崇明的星乐会种植培育花开绚烂万物焕颜一起领略春天里的美丽中国央视网消息惊蛰过后,天气回暖,神州大地生机盎然,到处都洋溢着春天的气息。上海沪上春意浓玉兰花正开春回大地,万物复苏。最近,在上海的闵行文化公园中,1200株玉兰竞相绽放。含苞待放的为什么我们打不了NBA?普通人和NBA球星各个部位身体差距有多大?想进入NBA球技与身体条件缺一不可,球技方面我们可以通过后天努力来弥补差距,比如很多街球手他们的运球能力就不逊色于NBA里普通的首发级别球星,但是身体素质方面包括身高臂展对抗等等就贺希宁26分苏若禹107深圳大胜四川取7连胜直播吧3月12日讯CBA常规赛,深圳对阵四川。深圳6连胜高居联赛第四,四川排在倒数第二。上半场,双方开场阶段势均力敌,比分咬得很紧,但四川后劲不足,深圳持续发力取得领先,半场战罢深小白鼠有多惨,它所做的贡献就有多伟大小鼠是灵长总目中繁殖力强,生长速度最快的动物。由于与人类亲缘关系不近不远(80的基因同源,高度相似的生理结构和机制),既能通过它们广泛且高效率地研究人体内机制疾病信息药物反馈,又没开源BBS论坛,解决最后的RSA证书问题,终于可以用了,配置已共享1,关于casnodecasnode(1)开源BBS技术调研,使用dockercompose启动casdoor项目和casnode项目,可以登陆进行权限控制,bbs也正常显示。do时隔两年,你手里的小米11还好吗?分享一下个人经历经常有朋友问我用的是什么手机,当我说出小米11的时候,他们总会问一句烧了吗。那我就来说一下这两年多的时间,使用小米11的感受吧。小米11刚发布的时候我就很喜欢,不管是外观还是配置,为什么联想这次很反常近期,IDC发布最新数据,2023年全球PC和平板电脑的出货量将降至4。031亿台,同比下降11。2。从去年开始,全球PC市场便遭遇了下滑的趋势,众多厂商也纷纷下调预期,用来迎接行抚顺市引进共享电动车的问题据当地一位网友介绍,自己之前曾经多次反馈共享电动车问题相关部门的回复是上层正在讨论电动车事宜,特向相关部门咨询,对于市内共享电动车的引进有何进展?今年夏天是否有望引进共享电动车?辽才知道!电动车充电,是先插电源还是先插电池?答案来了您在阅读前请点击上面的关注二字,后续会第一时间为您提供更多有价值的相关内容,感谢您的支持。电动车出现以后,给人们的日常出行带来了很大的便利,越来越多的人喜欢使用电动车作为代步工具,对话参加室温超导现场报告会物理学家迪亚斯15分钟演讲反复详述新发现,但缺乏独立复现的关键环节每经记者蔡鼎每经编辑高涵日前,轰动全球物理界的爆炸性新闻在拉斯维加斯的美国物理学会(以下简称APS)上诞生罗切斯特大学的物理学家兰加迪亚斯(RangaDias)及其团队在上述会议上