update configs

This commit is contained in:
Administrator 2024-10-05 12:05:17 +03:00
parent 612bae7ab0
commit e6935d81e1
2 changed files with 10 additions and 9 deletions

View File

@ -20,10 +20,8 @@ class ConfigsView(BaseView):
return '/configs/?stage=production'
self.stage = self.request.GET['stage']
self.context['stage'] = self.stage
def get(self):
self.context['configs'] = Config.objects.filter(project=self.request.user.selected_project, stage=self.stage).order_by('name')
self.context['error'] = 'error' in self.request.GET
self.context['configs'] = Config.objects.filter(project=self.request.user.selected_project,
stage=self.stage).order_by('name')
def post_create_config(self):
Config.objects.create(name=self.request.POST['name'], project=self.request.user.selected_project, stage=self.stage)
@ -36,11 +34,14 @@ class ConfigsView(BaseView):
def post_save(self):
data = self.request.POST['data']
config = Config.objects.get(id=self.request.POST['config'])
try:
data = loads(data)
except:
return '/configs?error=config_is_not_json'
config = Config.objects.get(id=self.request.POST['config'])
self.context['incorrect_config'] = config
self.context['incorrect_data'] = data
self.context['error'] = True
return
config.data = data
config.save()
return '/configs/?stage=' + config.stage

View File

@ -28,7 +28,7 @@
</div>
{% if error %}
<div class="alert alert-danger" role="alert">
Конфиг не имеет вид JSON!
Конфиг {{ incorrect_config.name }} не имеет вид JSON!
</div>
{% endif %}
<table class="table">
@ -52,11 +52,11 @@
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<textarea style="width: 100%; height: 800px;" name="data">{{ config.data_pretty }}</textarea>
<textarea style="width: 100%; height: 800px;{% if config.id == incorrect_config.id %}border: 1px solid #f00;{% endif %}" name="data">{% if config.id == incorrect_config.id %}{{ incorrect_data }}{% else %}{{ config.data_pretty }}{% endif %}</textarea>
</div>
<div class="modal-footer">
<button type="submit" name="action" value="save" class="btn btn-secondary">Сохранить</button>
<button type="submit" name="action" value="delete" class="btn btn-danger">Удалить</button>
<button type="submit" name="action" value="delete" class="btn btn-danger" onclick="return confirm('Подтверди удаление. Это действие необратимо.');">Удалить</button>
<button type="button" class="btn btn-link text-gray-600 ms-auto" data-bs-dismiss="modal">Закрыть</button>
</div>
</form>