如何定义可在django视图中使用的全局queryset对象

问题描述 投票:0回答:1

我想定义存储数据库表中数据的全局变量。我在定义的每个视图函数中都需要该数据。我不想每次函数调用时都触发查询。我为此使用django框架。关于此的任何建议我如何优化此解决方案?谢谢!

django django-models django-orm
1个回答
1
投票

您可以为此使用context_processors:注意:Context_processor始终仅返回字典]

例如:

context_processors.py

def global_data(req):
   your_global_query = YourModel.objects.all()
   return {'queryset':queryset}

现在您需要在settings.py文件中添加此功能

TEMPLATES = [
    {

        'OPTIONS': {
            'context_processors': [
             ..........
            'your.path.to.global_data'
© www.soinside.com 2019 - 2024. All rights reserved.