added validation error for forgetting variables in CONSTANCE_CONFIG_FIELDSETS

This commit is contained in:
Varun Bargali 2017-06-13 19:37:39 +05:30
parent 3162bd656f
commit d3da1e14bd
2 changed files with 19 additions and 0 deletions

View file

@ -149,6 +149,18 @@ class ConstanceForm(forms.Form):
'form and resubmit your changes.'))
return value
def clean(self):
cleaned_data = super(ConstanceForm, self).clean()
field_name_list = []
for fieldset_title, fields_list in settings.CONFIG_FIELDSETS.items():
for field_name in fields_list:
field_name_list.append(field_name)
if set(set(settings.CONFIG.keys()) - set(field_name_list)):
raise forms.ValidationError(_('CONSTANCE_CONFIG_FIELDSETS does not contain fields that exist in CONSTANCE_CONFIG'))
return cleaned_data
class ConstanceAdmin(admin.ModelAdmin):
change_list_template = 'admin/constance/change_list.html'

View file

@ -38,6 +38,13 @@
<div id="content-main" class="constance">
<div class="module" id="changelist">
<form id="changelist-form" action="" method="post" enctype="multipart/form-data">{% csrf_token %}
{% if form.non_field_errors %}
<ul class="errorlist">
{% for error in form.non_field_errors %}
<li>{{ error }}</li>
{% endfor %}
</ul>
{% endif %}
{% if form.errors %}
<ul class="errorlist">
{% endif %}