如何在 Django 中发布请求后保留模板的一些变量

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

我已经使用 Django 一段时间了,我对上论坛后如何编码有一种疑问。

我最重的页面需要生成几个我在视图上下文中发送的对象。 我这样组织我的观点:

def myFunction(request):
    if request.method == 'POST' and "some_Button" in request.POST : #when click on a button
        #update object_2

    elif request.method == 'POST' and "another_Button" in request.POST : #when click on another button
        #update object_1

    else: #part executed at first load
        myFunction.object_1 = #some code
        myFunction.object_2 = #some code
        myFunction.object_3 = #some code

    context = {'object_1' : myFunction.object_1, 'object_2' : myFunction.object_2, 'object_3' : myFunction.object_3}

    return render(request, 'index.html', context)

我发现了编写上下文变量的做法,例如 MyFunction.myVariable,以便在我只想更改对象时不必重新生成它们。就像这里,当我单击其中一个按钮时,我不必重新生成其他变量。

但是,我知道这不是一个好的做法,我想改变它。除了我找到的所有示例每次都需要重新生成所有变量。

我想过使用缓存来临时存储我的固定变量,但因为我是从域开始的,所以我还没有设置它。

你认为正确的方法是什么?只要我不必每次单击 index.html 页面上的按钮时都重新加载所有对象,我就可以更改我需要的内容。 如果可能的话,我想避免使用 Ajax

非常感谢

python django post caching request
© www.soinside.com 2019 - 2024. All rights reserved.