mirror of
https://github.com/Hopiu/wagtail.git
synced 2026-05-15 02:33:13 +00:00
Added error message for settings when site not defined (#4362)
* Added error message for settings when site not defined * added tests * fixed linter error * implemented feedback
This commit is contained in:
parent
d94a647b9e
commit
7f82787aed
2 changed files with 16 additions and 0 deletions
|
|
@ -127,6 +127,19 @@ class TestSettingEditView(BaseTestSettingView):
|
|||
self.assertEqual(setting.title, 'Edited site title')
|
||||
self.assertEqual(setting.email, 'test@example.com')
|
||||
|
||||
def test_get_edit_current_site(self):
|
||||
url = reverse('wagtailsettings:edit', args=('tests', 'testsetting'))
|
||||
default_site = Site.objects.get(is_default_site=True)
|
||||
|
||||
response = self.client.get(url)
|
||||
self.assertRedirects(response, status_code=302, expected_url='%s%s/' % (url, default_site.pk))
|
||||
|
||||
def test_get_edit_current_site_invalid(self):
|
||||
Site.objects.all().delete()
|
||||
url = reverse('wagtailsettings:edit', args=('tests', 'testsetting'))
|
||||
response = self.client.get(url)
|
||||
self.assertRedirects(response, status_code=302, expected_url='/admin/')
|
||||
|
||||
|
||||
@override_settings(ALLOWED_HOSTS=['testserver', 'example.com', 'noneoftheabove.example.com'])
|
||||
class TestMultiSite(BaseTestSettingView):
|
||||
|
|
|
|||
|
|
@ -39,6 +39,9 @@ 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()
|
||||
if not site:
|
||||
messages.error(request, _("This setting could not be opened because there is no site defined."))
|
||||
return redirect('wagtailadmin_home')
|
||||
return redirect('wagtailsettings:edit', app_name, model_name, site.pk)
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue