django - django 链接到单独预过滤的数据
问题描述
嘿!
我有多个视图,一些带有结果表和一些详细视图。从详细视图应该有到其他详细视图(有效)和一些带有预过滤结果的结果表的链接。例如,在详细视图中给出的名称之后。
如果单击按钮,我希望重定向到已针对详细视图中给出的(例如)操作环境过滤的结果表。但我想对所有详细视图使用相同的模板(每个工厂都有一个详细视图),所以它应该是通用的,而不是硬编码的。
有谁知道我可以做到这一点?
# views.py
def plants_view(request):
plants = Plant.objects.all()
myFilter = PlantFilter(request.GET, queryset=plants)
plants = myFilter.qs
context = {"plants": plants, "myFilter": myFilter}
return render(request, 'plants/search_table.html', context)
class PlantDetail(DetailView):
model = Plant
def get(self, request, *args, **kwargs):
plant = get_object_or_404(Plant, pk=kwargs['pk'])
context = {'plant': plant}
return render(request, 'plants/detail.html', context)
# filters.py
class PlantFilter(django_filters.FilterSet):
name = CharFilter(field_name="name", lookup_expr='icontains')
possession_of_plant = ModelChoiceFilter(queryset=PossessionOfPlant.objects.all())
class Meta:
model = Plant
fields = '__all__'
<!-- detail.html -->
<h3>Plant</h3>
<p><b>Name: </b>{{plant.name}}</p>
<p><b>Plant type: </b>{{plant.plant_type}}</p>
<p><b>Operating Environment: </b>
<a href="{% url 'plants:plants' %}?name=&plant_type=&operating_environment=pilot&nuts_level_3=&comment=&possession_of_plant=">
{{plant.operating_environment}}</a></p>
像这样我可以在链接中进行预过滤,但它是针对操作环境 = 飞行员进行硬编码的。我想要的是过滤工厂/详细信息视图中使用的确切操作环境。有没有办法做到这一点?
任何帮助表示赞赏!如果你只知道我应该在哪里看起来那对我来说完全没问题!
此致 :)
解决方案
推荐阅读
- julia - 如何在 Julia 中硬编码结构变量?
- python - python过滤行匹配keyworks
- python - 如何像普通用户一样自动连接到 Twitch 流
- python - 如何从其他两个 csv 文件创建新文件?
- r - 尝试使用 R 中的多个 if else 语句创建新列
- ios - iOS Objective-c 同步
- python - 正确地将 NumPy 数组转换为在 gpu 上运行的 PyTorch 张量
- algorithm - 有约束的资源分配算法
- python - 表单函数始终作为有效传递
- powershell - Powershell:如何找出哪些正在运行的服务不属于操作系统和非 MS