django admin - 如何在python中获取当前的url参数

时间:2017-12-12 19:42:33

标签: django django-admin

这里我举了一个例子,说明了我在admin.py中的内容:

var_dump

我制作了一个链接,可用于显示具有特定颜色的汽车。 假设该页面目前显示价格低于$ 20k的汽车,我希望此链接保留当前过滤器。 任何想法如何做到这一点?也许有办法从python获取当前的URL。

请注意,我知道我可以在页面加载后编写一个javascript来修改链接,但这是一个糟糕的解决方案。

1 个答案:

答案 0 :(得分:5)

您可以在调用get_color之前保存完整路径或请求,例如:

class CarAdmin(CustomAdmin):
    list_display = ('get_color',)

    def get_queryset(self, request):
        self.full_path = request.get_full_path()
        return super(CarAdmin, self).get_queryset(request)

    def get_color(self, obj):
        return mark_safe('<a href="{}&color={}">{}</a>'.format(self.full_path, obj.color, obj.color))  # Need to handle empty query paramrers..