ensure admin settings urls start with app label and model name, so they show as highlighted

pull/2378/merge
Matthew Downey 2016-03-04 10:34:45 +11:00 zatwierdzone przez Matt Westcott
rodzic 32d6d43692
commit cc509f226a
5 zmienionych plików z 9 dodań i 9 usunięć

Wyświetl plik

@ -24,4 +24,4 @@ class SiteSwitchForm(forms.Form):
@classmethod
def get_change_url(cls, site, model):
return reverse('wagtailsettings:edit', args=[
site.pk, model._meta.app_label, model._meta.model_name])
model._meta.app_label, model._meta.model_name, site.pk])

Wyświetl plik

@ -26,7 +26,7 @@
</div>
</header>
<form action="{% url 'wagtailsettings:edit' site.pk opts.app_label opts.model_name %}" method="POST">
<form action="{% url 'wagtailsettings:edit' opts.app_label opts.model_name site.pk %}" method="POST">
{% csrf_token %}
{{ edit_handler.render_form_content }}

Wyświetl plik

@ -54,7 +54,7 @@ class BaseTestSettingView(TestCase, WagtailTestUtils):
return self.client.post(url, post_data)
def edit_url(self, app, model, site_pk=1):
return reverse('wagtailsettings:edit', args=[site_pk, app, model])
return reverse('wagtailsettings:edit', args=[app, model, site_pk])
class TestSettingCreateView(BaseTestSettingView):
@ -134,7 +134,7 @@ class TestMultiSite(BaseTestSettingView):
start_url = reverse('wagtailsettings:edit', args=[
'tests', 'testsetting'])
dest_url = 'http://testserver' + reverse('wagtailsettings:edit', args=[
self.default_site.pk, 'tests', 'testsetting'])
'tests', 'testsetting', self.default_site.pk])
response = self.client.get(start_url, follow=True)
self.assertRedirects(response, dest_url, status_code=302, fetch_redirect_response=False)
@ -146,7 +146,7 @@ class TestMultiSite(BaseTestSettingView):
start_url = reverse('wagtailsettings:edit', args=[
'tests', 'testsetting'])
dest_url = 'http://example.com' + reverse('wagtailsettings:edit', args=[
self.other_site.pk, 'tests', 'testsetting'])
'tests', 'testsetting', self.other_site.pk])
response = self.client.get(start_url, follow=True, HTTP_HOST=self.other_site.hostname)
self.assertRedirects(response, dest_url, status_code=302, fetch_redirect_response=False)

Wyświetl plik

@ -6,5 +6,5 @@ from . import views
urlpatterns = [
url(r'^(\w+)/(\w+)/$', views.edit_current_site, name='edit'),
url(r'^(\d+)/(\w+)/(\w+)/$', views.edit, name='edit'),
url(r'^(\w+)/(\w+)/(\d+)/$', views.edit, name='edit'),
]

Wyświetl plik

@ -38,10 +38,10 @@ def edit_current_site(request, app_name, model_name):
# Redirect the user to the edit page for the current site
# (or the current request does not correspond to a site, the first site in the list)
site = request.site or Site.objects.first()
return redirect('wagtailsettings:edit', site.pk, app_name, model_name)
return redirect('wagtailsettings:edit', app_name, model_name, site.pk)
def edit(request, site_pk, app_name, model_name):
def edit(request, app_name, model_name, site_pk):
model = get_model_from_url_params(app_name, model_name)
if not user_can_edit_setting_type(request.user, model):
raise PermissionDenied
@ -66,7 +66,7 @@ def edit(request, site_pk, app_name, model_name):
instance=instance
)
)
return redirect('wagtailsettings:edit', site.pk, app_name, model_name)
return redirect('wagtailsettings:edit', app_name, model_name, site.pk)
else:
messages.error(request, _("The setting could not be saved due to errors."))
edit_handler = edit_handler_class(instance=instance, form=form)