Author: russellm Date: 2009-07-23 09:31:33 -0500 (Thu, 23 Jul 2009) New Revision: 11314
Added: django/trunk/tests/regressiontests/admin_widgets/urls2.py Modified: django/trunk/django/contrib/admin/widgets.py django/trunk/tests/regressiontests/admin_widgets/tests.py Log: Fixed #11532 -- Corrected the link used for edit_inline foreign keys in admin when the admin is deployed using the old style admin.root approach. Thanks to JP for the report. Modified: django/trunk/django/contrib/admin/widgets.py =================================================================== --- django/trunk/django/contrib/admin/widgets.py 2009-07-23 13:58:00 UTC (rev 11313) +++ django/trunk/django/contrib/admin/widgets.py 2009-07-23 14:31:33 UTC (rev 11314) @@ -224,7 +224,8 @@ try: related_url = reverse('admin:%s_%s_add' % info, current_app=self.admin_site.name) except NoReverseMatch: - related_url = '../../../%s/%s/add/' % info + info = (self.admin_site.root_path, rel_to._meta.app_label, rel_to._meta.object_name.lower()) + related_url = '%s%s/%s/add/' % info self.widget.choices = self.choices output = [self.widget.render(name, value, *args, **kwargs)] if rel_to in self.admin_site._registry: # If the related object has an admin interface: Modified: django/trunk/tests/regressiontests/admin_widgets/tests.py =================================================================== --- django/trunk/tests/regressiontests/admin_widgets/tests.py 2009-07-23 13:58:00 UTC (rev 11313) +++ django/trunk/tests/regressiontests/admin_widgets/tests.py 2009-07-23 14:31:33 UTC (rev 11314) @@ -115,6 +115,7 @@ class AdminForeignKeyWidgetChangeList(DjangoTestCase): fixtures = ["admin-widgets-users.xml"] + admin_root = '/widget_admin' def setUp(self): self.client.login(username="super", password="secret") @@ -123,5 +124,9 @@ self.client.logout() def test_changelist_foreignkey(self): - response = self.client.get('/widget_admin/admin_widgets/car/') - self.failUnless('/widget_admin/auth/user/add/' in response.content) + response = self.client.get('%s/admin_widgets/car/' % self.admin_root) + self.failUnless('%s/auth/user/add/' % self.admin_root in response.content) + +class OldAdminForeignKeyWidgetChangeList(AdminForeignKeyWidgetChangeList): + urls = 'regressiontests.admin_widgets.urls2' + admin_root = '/deep/down/admin' Added: django/trunk/tests/regressiontests/admin_widgets/urls2.py =================================================================== --- django/trunk/tests/regressiontests/admin_widgets/urls2.py (rev 0) +++ django/trunk/tests/regressiontests/admin_widgets/urls2.py 2009-07-23 14:31:33 UTC (rev 11314) @@ -0,0 +1,7 @@ + +from django.conf.urls.defaults import * +import widgetadmin + +urlpatterns = patterns('', + (r'^deep/down/admin/(.*)', widgetadmin.site.root), +) --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django updates" group. To post to this group, send email to django-updates@googlegroups.com To unsubscribe from this group, send email to django-updates+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/django-updates?hl=en -~----------~----~----~----~------~----~------~--~---