Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 是否可以将render_to_响应模板从django保存到服务器?_Python_Django_Mongodb_Caching - Fatal编程技术网

Python 是否可以将render_to_响应模板从django保存到服务器?

Python 是否可以将render_to_响应模板从django保存到服务器?,python,django,mongodb,caching,Python,Django,Mongodb,Caching,我用Python、Django框架创建了web应用程序。Web应用程序从MongoDB数据库获取数据,它从MongoDB数据库获取大约10000个文档,并且工作速度非常慢。现在正在寻找加速我的web应用程序的方法。所以,是否可以在服务器上临时将方法render\u to\u response的结果存储为HTML?看起来是这样的: 我有一个HTML表单;当用户在表单中键入数据并单击submit按钮时,web app执行一个从Mongo数据库获取数据的视图,并通过变量Mongo_data将该数据发送

我用Python、Django框架创建了web应用程序。Web应用程序从MongoDB数据库获取数据,它从MongoDB数据库获取大约10000个文档,并且工作速度非常慢。现在正在寻找加速我的web应用程序的方法。所以,是否可以在服务器上临时将方法
render\u to\u response
的结果存储为HTML?看起来是这样的: 我有一个HTML表单;当用户在表单中键入数据并单击submit按钮时,web app执行一个从Mongo数据库获取数据的视图,并通过变量
Mongo_data
将该数据发送到
home.html

return render_to_response('home.html', {'mongo_data': mongo_data, 'request': request},
                          context_instance=RequestContext(request))
home.html
显示存储在变量
mongo\u data
中的数据。在web应用程序中,我有很多相同的查询,对于相同的查询,我会得到相同的结果,如
home.html
。所以我想将
home.html
存储到服务器上的文件夹中,例如
temp
,当用户在html表单中键入数据并单击提交按钮时,首先检查他的数据是否在
temp
文件夹中;如果是,则加载该
home.html
,如果不是,则转到视图,该视图将生成新的
home.html
,其中包含特定的
mongo\u数据。

如果这是可能的,它将加快我的网络应用程序很多

Django缓存框架正是为此而设计的;看

在本例中,您可以将整个视图缓存一段时间:

@cache_page(60 * 15)
def my_mongo_view(request):
    return render_to_response('home.html', ...)
(来自)

或者使用低级缓存API():

如果您只是阅读文档,您会发现更多缓存选项(例如,在模板中)


p.S.您还可以通过变量、用户ID或其他方式对缓存进行参数化。

Django缓存框架正是为此而设计的;看

在本例中,您可以将整个视图缓存一段时间:

@cache_page(60 * 15)
def my_mongo_view(request):
    return render_to_response('home.html', ...)
(来自)

或者使用低级缓存API():

如果您只是阅读文档,您会发现更多缓存选项(例如,在模板中)

p.S.您还可以通过变量、用户ID或其他方式对缓存进行参数化