Django - 如何在按下按钮后将当前 url 参数传递给新的 url

Django - How to pass current url parameters if any to a new url after pressing a button

我的当前页面有一个过滤器,用户可以根据需要填写该过滤器。

def charts_wallet_view(request):

 result = {}
 filtered_date1 = request.GET.get('fecha_inicio', '')
 filtered_date2 = request.GET.get('fecha_fin', '')
 context = {
    'mes_inicio' : mes_inicio,
    'mes_fin' : mes_fin,
    }
 return render(request, 'wallet.html', context)

在 wallet.html 中有一个按钮可以将用户重定向到一个新的 url 下载文件:

<a class="gpg-button egp secondary no_decoration" href="{% url "export_wallet" %}">

我的问题是:如何将参数(fecha_inicio 和 fecha_fin)传递给新的 url/view?首先我想做这样的事情:

<a class="gpg-button egp secondary no_decoration" href="{% url "export_wallet" mes_inicio mes_fin %}">

但是没有用。然后我虽然我也需要在 url.py 中添加两个参数:

path('export_wallet/<str:mes_inicio>/<str:fecha_fin >', views.export_wallet_view, name='export_wallet')

并且在 export_wallet 视图中:

def charts_wallet_view(request, mes_inicio,mes_fin):
  #view logic

但是当参数没有传递任何值时,这不起作用。

编辑,因为问题改变了: 在这里执行 POST 可能比 GET 更有意义。

path('export_wallet/', views.export_wallet_view, name='export_wallet'), 

.inline {
  display: inline;
}

.link-button {
  background: none;
  border: none;
  color: blue;
  text-decoration: underline;
  cursor: pointer;
  font-size: 1em;
  font-family: serif;
}
.link-button:focus {
  outline: none;
}
.link-button:active {
  color:red;
}
<form method="post" action="{% url 'export_wallet' %}" class="inline">
  <input type="hidden" name="fecha_inicio" value="{{ fecha_inicio }}">
<input type="hidden" name="fecha_fin" value="{{ fecha_fin }}">
  <button type="submit" name="submit_param" value="submit_value" class="link-button">
    This is a link that sends a POST request
  </button>
</form>

然后在你的 export_wallet_view:

fecha_fin = request.POST.get("fecha_fin")