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.