在我的 jinja2 模板中使用 url 作为变量?

Use the url as a variable in my jinja2 template?

有没有办法在我的模板中使用 slug?

我的网址中有:

path("cats/check/<int:pk>/lista", ObjetoListView.as_view(), name='posesiones_consulta'),

如何访问 int:pk 作为变量?

我要评价这个:

{% if cat.mom.id == pk %} 

您将它传递给上下文:

class ObjectoListView(ListView):

    # …

    def get_context_data(self, *args, **kwargs):
        return super().get_context_data(
            *args,
            <b>pk=self.kwargs['pk']</b>,
            **kwargs
        )

如果您想要过滤列表,您应该在数据库级别执行此操作,例如:

class ObjectoListView(ListView):

    # …

    def get_queryset(self, *args, **kwargs):
        return super().get_queryset(*args, **kwargs).filter(
            <b>mom__pk=self.kwargs['pk']</b>
        )

在模板中过滤不是一个好主意,因为那样的话数据库将return 所有条记录,从而增加带宽 在数据库和应用程序之间,此外,在数据库级别进行过滤(几乎)总是比在视图或模板中过滤更快。