Skip to content

Instantly share code, notes, and snippets.

@benbacardi
Last active June 2, 2025 14:41
Show Gist options
  • Save benbacardi/227f924ec1d9bedd242b to your computer and use it in GitHub Desktop.
Save benbacardi/227f924ec1d9bedd242b to your computer and use it in GitHub Desktop.
Django reverse with a querystring
from django.utils.http import urlencode
def reverse_querystring(view, urlconf=None, args=None, kwargs=None, current_app=None, query_kwargs=None):
'''Custom reverse to handle query strings.
Usage:
reverse('app.views.my_view', kwargs={'pk': 123}, query_kwargs={'search': 'Bob'})
'''
base_url = reverse(view, urlconf=urlconf, args=args, kwargs=kwargs, current_app=current_app)
if query_kwargs:
return '{}?{}'.format(base_url, urlencode(query_kwargs))
return base_url
@thomthom
Copy link

thomthom commented Jun 2, 2025

For the record; Django 5.2 was released 2nd April; https://docs.djangoproject.com/en/5.2/releases/5.2/#urls

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment