Я пишу приложение django с URL-адресом типа http://localhost/entity/id/? overlay = other_id. Где id является первичным ключом конкретной сущности, а overlay - необязательный параметр запроса для второго объекта, который должен быть наложен на дисплей. Пользователь может обновлять объект только при просмотре объектов с помощью наложения. Когда POSTing to/update/id, я хочу перенаправить обратно в /entity/id, но я не хочу потерять свой параметр запроса во время перенаправления, так как изменение в представлении будет раздражать.
Например, у меня есть следующее в url.py:
...
(r'^update/(?P<id>.+)/(?P<overlay_id>.+)/$', 'update'),
(r'^entity/(?P<id>.+)/$', 'view'),
...
Так как overlay_id требуется при обновлении, это часть URL-адреса, а не параметр запроса. В представлении django я хочу перенаправить после успешного POST и использовать reverse(), чтобы избежать ссылок на URL-адреса в моем коде python. Общая идея:
return HttpResponseRedirect(
reverse('views.view',
kwargs={
'id': id,
},
)
)
Но как передать свой параметр запроса, хотя обратный?
Спасибо, Craig