日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Django定义全局变量

發(fā)布時(shí)間:2025/4/16 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Django定义全局变量 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

定義全局變量,在項(xiàng)目的任何位置都可以獲取到變量的值

在include App=》include文件夾下=》context_processors.py 里定義需要獲取的變量

#!/usr/bin/env python # coding:utf-8 # Author:Fengchunyang """ 定義django template的全局模板變量 """ from monsys.models import MonObject from include.common.common import adddef monitor_status(request):"""主頁(yè)面顯示全局的各種監(jiān)控對(duì)象的狀態(tài)數(shù)據(jù)"""service_obj = MonObject.objects.get(name="服務(wù)").monobjectsub_set.all()product_obj = MonObject.objects.get(name="業(yè)務(wù)").monobjectsub_set.all()host_obj = MonObject.objects.get(name="主機(jī)").monobjectsub_set.all()container_obj = MonObject.objects.get(name="容器").monobjectsub_set.all()status = {"monitor_product": {"normal": 0,"warning": 0,"danger": 0,},"monitor_service": {"normal": reduce(add, [mos.normal for mos in service_obj]),"warning": reduce(add, [mos.warn for mos in service_obj]),"danger": reduce(add, [mos.danger for mos in service_obj]),"unknown": reduce(add, [mos.unknown for mos in service_obj]),},"monitor_system": {"normal": reduce(add, [mos.normal for mos in host_obj]) + reduce(add, [mos.normal for mos in container_obj]),"warning": reduce(add, [mos.warn for mos in host_obj]) + reduce(add, [mos.warn for mos in container_obj]),"danger": reduce(add, [mos.danger for mos in host_obj]) + reduce(add, [mos.danger for mos in container_obj]),"unknown": reduce(add, [mos.unknown for mos in host_obj]) + reduce(add, [mos.unknown for mos in container_obj]),},}return status

然后在settings.py的TEMPLATES里注冊(cè)這個(gè)文件夾

TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [os.path.join(BASE_DIR, 'statics'),],'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','include.middleware.context_processors.monitor_status', # 自定義全局監(jiān)控狀態(tài)變量 ],},}, ]

然后就可以在項(xiàng)目的任何位置取到需要的變量了

轉(zhuǎn)載于:https://www.cnblogs.com/wangjian941118/p/11321390.html

總結(jié)

以上是生活随笔為你收集整理的Django定义全局变量的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。