0
我有一個從我的數據庫(名爲「plp's」),排列在一個表中的多個對象的列表。在每個「plp」元素旁邊,我有一個「編輯」按鈕來修改該特定條目。Django:重定向用戶兩頁返回
接下來,我將用戶重定向到一個新的url,在那裏我傳遞該「plp」的id,並顯示錶單以編輯它,並帶有「save」按鈕。
在按下「保存」,即request.POST後,我想將用戶重定向回第一個URL,並將所有「plp」對象的列表放在一個列表中。這意味着網站,他第一次按下「編輯」。
我可以以某種方式保存單擊「編輯」的URL,並將其傳遞給我的views.py?
謝謝
listdns.html:
<td>
<a href='{% url "plpuredi" plp_id=pos.id %}' class="btn btn-primary btn-sm">Uredi</a>
</td>
urls.py:
rl(r'^(?P<plp_id>\d+)/uredi$', plp_list_uredi,name="plpuredi")
views.py:
def plp_list_uredi(request, plp_id=None):
moj_plp=PLPPostavka.objects.get(id=plp_id)
form=PLPPostavkaForm(request.POST or None,request=request,dns=moj_plp.dns, instance=moj_plp)
context ={
'plp':moj_plp,
'form':form,
}
if request.POST:
if form.is_valid():
plp = form.save()
return redirect(request.path)
return render(request, "plp_pos/uredi.html",context)
uredi.html
<form action="" method="POST">
{% csrf_token %}
<div class="box">
<div class="box-header">
<h4 class="box-title">
Urejanje PLP Postavke
</h4>
</div>
<div class="box-body">
{% for field in form %}
<div class="form-group">
<label for="{{ field.id_for_label }}" class="col-md-2 control-label detail">{{ field.label }}</label>
<div class="col-md-10">
{% if field|field_type == "datefield" %}
{% render_field field class+="form-control dateinput" %}
{% else %}
{% render_field field class+="form-control" %}
{% endif %}
</div>
</div>
{% endfor %}
</div>
<div class="box-footer">
<div class="box-tools pull-right">
<input type="submit" value="Shrani" class="btn btn-primary" />
</div>
</div>
提供您models.py,urls.py和views.py中 –
包括你的代碼裏面的帖子請 – UmarZaii
我認爲你只需要改變一行:'返回重定向(request.path)'並使用httpredirect到你想重定向到的url – Gahan