Django数据未动态更改

2024-10-01 22:40:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我编写了一个django应用程序来以html模板显示从mongodb获取的一些数据。所有订单项ID都是以状态'APPROVED'获取的

型号.py:

from pymongo import MongoClient

class GetNewOrders(object):
    def __init__(self):
        self.client = MongoClient('localhost',27017)
        self.db = self.client['Flipkart']
        self.sale_order = list(self.db['sale_order'].find({'status':'APPROVED'}))

    def getOrderItemId(self):
        oiids = []
        for each in self.sale_order:
            oiids.append(each['orderItemId'])
        return oiids

视图.py:

from django.shortcuts import render
from django.http import HttpResponse
from orders.models import GetNewOrders

no = GetNewOrders()
oiids_new = no.getOrderItemId()

def orders(request):
    context_dict = {'oiids_new':oiids_new}
    return render(request, 'orders/orders.html', context_dict)

我在html文件中使用了for循环来显示这些数据。如果我将文档的状态更改为'APPROVED',它不会反映在我的html中,直到我重新启动服务器。如何在不重启django服务器的情况下用html显示更改的数据


Tags: 数据djangofromimportselfnew状态def
1条回答
网友
1楼 · 发布于 2024-10-01 22:40:58

因为GetNewOrders是模块级的,所以它只执行一次—您需要将它移到函数体中:

def orders(request):
    no = GetNewOrders()
    oiids_new = no.getOrderItemId()

    context_dict = {'oiids_new':oiids_new}
    return render(request, 'orders/orders.html', context_dict)

相关问题 更多 >

    热门问题