Skip to content

Commit 901d053

Browse files
committed
Debug menu should preserve GET parameters for profile/SQL trace/code finder
1 parent 60ee587 commit 901d053

2 files changed

Lines changed: 11 additions & 4 deletions

File tree

docs/test_doc_dev_tools.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,6 @@ def fix_filename(filename):
119119
"""
120120

121121

122-
123122
def test_edit():
124123
# language=rst
125124
"""

iommi/menu.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242
)
4343
from iommi.shortcut import with_defaults
4444
from iommi.struct import Struct
45+
from iommi.table import params_of_request
4546

4647

4748
class MenuBase(Part, Tag):
@@ -288,6 +289,13 @@ def _set_active(item):
288289
current._active = True
289290

290291

292+
def add_get_parameter_to_current_url(request, **new_params):
293+
params = params_of_request(request)
294+
for k, v in new_params.items():
295+
params[k] = v
296+
return '?' + params.urlencode()
297+
298+
291299
def get_debug_menu(**kwargs):
292300
class DebugMenu(Menu):
293301
code = MenuItem(
@@ -308,7 +316,7 @@ class DebugMenu(Menu):
308316
tag='li',
309317
)
310318
code_finder = MenuItem(
311-
url='?_iommi_code_finder',
319+
url=lambda request, **_: add_get_parameter_to_current_url(request, _iommi_code_finder=''),
312320
tag='li',
313321
)
314322
edit = MenuItem(
@@ -337,7 +345,7 @@ class DebugMenu(Menu):
337345
include=lambda **_: 'iommi.live_edit.Middleware' in settings.MIDDLEWARE,
338346
)
339347
profile = MenuItem(
340-
url='?_iommi_prof',
348+
url=lambda request, **_: add_get_parameter_to_current_url(request, _iommi_prof=''),
341349
tag='li',
342350
include=lambda **_: 'iommi.profiling.Middleware' in settings.MIDDLEWARE,
343351
)
@@ -358,7 +366,7 @@ class DebugMenu(Menu):
358366
)
359367
sql_trace = MenuItem(
360368
display_name='SQL trace',
361-
url='?_iommi_sql_trace',
369+
url=lambda request, **_: add_get_parameter_to_current_url(request, _iommi_sql_trace=''),
362370
tag='li',
363371
include=lambda **_: 'iommi.sql_trace.Middleware' in settings.MIDDLEWARE,
364372
)

0 commit comments

Comments
 (0)