Django管理员自定义变更列表,每个列表中都有超链接操作

2024-10-03 23:19:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用django管理做一个报告应用程序。我已经在changlist中添加了一个自定义搜索表单,覆盖了“changlist\u view.html”模板,其中有一个名为'company'的元素

<form action="" method="POST" class="form-inline"> {% csrf_token %} <select name="company"> {% for c in company_list %} <option value="{{c.key}}" {% if company_keep == c.key %} selected="selected"{% endif %} >{{c.value}}</option> {% endfor %} </select> <button type="submit" >Search</button> </form>

在列表显示中,每行都有超链接“report”,后端代码如下:

class myAdminModel(admin.ModelAdmin): ...... def report_link(self, obj): url = f"/%d/%d/report/" % (***company-key***, ***obj.pk-id***,) return mark_safe( "<a target='blank' href='{url}'>Report</a>" ) ......

现在我最头疼的问题是,除了company-key之外,我可以很容易地得到obj.pk,我知道它是来自页面请求的表单元素,所以在这种情况下有没有解决方法来获得表单元素


Tags: keyreportformobjurl元素表单value