Skip to content

Commit 453db9f

Browse files
committed
Fix #184 the correct way
1 parent 3efca83 commit 453db9f

File tree

2 files changed

+16
-22
lines changed

2 files changed

+16
-22
lines changed

feincms/content/application/models.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -69,11 +69,6 @@ def reverse(viewname, urlconf=None, args=None, kwargs=None, prefix=None, *vargs,
6969
# TODO do not use internal feincms data structures as much
7070
model_class = ApplicationContent._feincms_content_models[0]
7171

72-
if other_urlconf in model_class.ALL_APPS_CONFIG:
73-
# We have an overridden URLconf
74-
other_urlconf = model_class.ALL_APPS_CONFIG[other_urlconf]['config'].get('urls',
75-
other_urlconf)
76-
7772
if hasattr(_local, 'urlconf') and other_urlconf == _local.urlconf[0]:
7873
# We are reversing an URL from our own ApplicationContent
7974
return _reverse(other_viewname, other_urlconf, args, kwargs, _local.urlconf[1], *vargs, **vkwargs)
@@ -145,6 +140,11 @@ def reverse(viewname, urlconf=None, args=None, kwargs=None, prefix=None, *vargs,
145140
# application contents' ``process`` method currently
146141
saved_cfg = getattr(_local, 'urlconf', None)
147142

143+
if other_urlconf in model_class.ALL_APPS_CONFIG:
144+
# We have an overridden URLconf
145+
other_urlconf = model_class.ALL_APPS_CONFIG[other_urlconf]['config'].get(
146+
'urls', other_urlconf)
147+
148148
# Initialize application content reverse hackery for the other application
149149
_local.urlconf = (other_urlconf, content.parent.get_absolute_url())
150150

feincms/tests/base.py

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1082,33 +1082,17 @@ def test_25_applicationcontent(self):
10821082
self.assertContains(response, 'args:/test-page/test-child-page/args_test/xy/zzy/')
10831083
self.assertContains(response, 'base:/test/')
10841084

1085-
response = self.client.get(page.get_absolute_url() + 'alias_reverse_test/')
1086-
self.assertContains(response, 'home:/test-page/test-child-page/')
1087-
self.assertContains(response, 'args:/test-page/test-child-page/args_test/xy/zzy/')
1088-
self.assertContains(response, 'base:/test/')
1089-
10901085
self.assertEqual(reverse('feincms.tests.applicationcontent_urls/ac_module_root'),
10911086
'/test-page/test-child-page/')
1092-
self.assertEqual(reverse('whatever/ac_module_root'),
1093-
'/test-page/test-child-page/')
10941087

10951088
if hasattr(self, 'assertNumQueries'):
10961089
self.assertNumQueries(0,
10971090
lambda: reverse('feincms.tests.applicationcontent_urls/ac_module_root'))
1098-
self.assertNumQueries(0,
1099-
lambda: reverse('whatever/ac_module_root'))
11001091

11011092
_empty_reverse_cache()
11021093

11031094
self.assertNumQueries(1,
11041095
lambda: reverse('feincms.tests.applicationcontent_urls/ac_module_root'))
1105-
self.assertNumQueries(0,
1106-
lambda: reverse('whatever/ac_module_root'))
1107-
1108-
_empty_reverse_cache()
1109-
1110-
self.assertNumQueries(1,
1111-
lambda: reverse('whatever/ac_module_root'))
11121096
self.assertNumQueries(0,
11131097
lambda: reverse('feincms.tests.applicationcontent_urls/ac_module_root'))
11141098

@@ -1144,10 +1128,20 @@ def test_25_applicationcontent(self):
11441128
ordering=0,
11451129
urlconf_path='whatever')
11461130

1131+
response = self.client.get(page.get_absolute_url() + 'alias_reverse_test/')
1132+
self.assertContains(response, 'home:/test-page/')
1133+
self.assertContains(response, 'args:/test-page/args_test/xy/zzy/')
1134+
self.assertContains(response, 'base:/test/')
1135+
11471136
self.assertEqual(reverse('blog_urls/blog_entry_list'), '/test-page/test-child-page/')
11481137
self.assertEqual(reverse('feincms.tests.applicationcontent_urls/ac_module_root'),
11491138
'/test-page/test-child-page/')
1150-
self.assertEqual(reverse('whatever/ac_module_root'), '/test-page/test-child-page/')
1139+
self.assertEqual(reverse('whatever/ac_module_root'), '/test-page/')
1140+
1141+
page.applicationcontent_set.get(urlconf_path='feincms.tests.applicationcontent_urls').delete()
1142+
1143+
self.assertEqual(reverse('blog_urls/blog_entry_list'), '/test-page/test-child-page/')
1144+
self.assertEqual(reverse('whatever/ac_module_root'), '/test-page/')
11511145

11521146
def test_26_page_form_initial(self):
11531147
self.create_default_page_set()

0 commit comments

Comments
 (0)