django - 如何更新 Django QuerySet,使其不返回缓存数据?
问题描述
当我在模型中创建新记录时,我的 Django ListView 视图中的 QuerySet 不会自动更新。Django 管理员更新和数据库更新,但视图没有更新。
我开始意识到发生这种情况是因为 QuerySet 正在使用缓存数据。
要在获取请求上重新执行 QuerySet,我尝试了以下代码的各种版本,但均未成功...
def get_queryset(self):
self.user = self.request.user
queryset = Strategy.objects.filter(user=self.user)
updated_queryset = queryset.update()
return updated_queryset
每次刷新网页时都不会更新我的 QuerySet,而是返回一个空的 QuerySet。
我需要做什么来更新 GET 请求上的 QuerySet?
整个景色...
from django.views.generic import ListView, DetailView, FormView
from .models import Strategy, Version
from .forms import StrategyForm, VersionForm, ToolForm
class StrategyListView(ListView):
model = Strategy
context_object_name = 'strategy_list'
template_name = 'simulator/strategy_list.html'
def get_queryset(self):
self.user = self.request.user
return Strategy.objects.filter(user=self.user)
解决方案
推荐阅读
- javascript - 无法使用 ipfs.add() 将图像上传到 ipfs
- c# - .NET CORE 3.1 ApiController 装饰器是否使用 System.Text.Json 返回 json?
- javascript - 如何从不同的 HTML 文件调用 JavaScript 函数?
- python - 正则表达式返回两个数字?
- android - 我无法在 Android Studio 中运行模拟器
- regex - 如何在JMeter的while控制器中保存特定采样器的响应主体
- reactjs - 有没有办法在 React 中显示图像之前加载它们?
- php - 如何保护 HTML 表单免受 XSS 攻击?
- memory - 对英特尔傲腾的内存驱动技术 (IMDT) 和 DCPMM 内存模式之间的区别感到困惑
- python - 如何在 TensorFlow v2 中传递会话对象?