I'm trying to reverse a named URL and include a querystring in it. Basically, I've modified the login function, and I want to send ?next=
in it.
Here's what I'm doing now: reverse(name) + "?next=" + reverse(redirect)
Here's what I'd like to do: reverse(name, kwargs = { 'next':reverse(redirect) } )
My URL for the login page (just as an example) looks like this:
url(r'^login/', custom_login, name = 'login'),
So how do I modify this whole thing (or call it) to include the next without having to concatenate it? It feels like an iffy solution at best.
You can't capture GET parameters in the url confs, so your method is correct.
I generally prefer string formatting but it's the same thing.
"%s?next=%s" % (reverse(name), reverse(redirect))
http://docs.djangoproject.com/en/dev/topics/http/urls/#what-the-urlconf-searches-against
The URLconf searches against the requested URL, as a normal Python string. This does not include GET or POST parameters, or the domain name.