tteqwe, для обновления уже существующего словаря воспользуйтесь методом update(). Для этого необходимо считать актуальное состояние конфига во временный словарь и потом просто обновить нужное поле. По итогу все будет выглядеть примерно так:
if request.method == 'POST':
with open('sw_templates.json', 'r', encoding='utf-8') as f:
to_json = json.load(f)
post_data = request.get_json()
json_from_post = {}
if post_data['type'] == 'com':
json_from_post = {'COM-port': post_data}
elif post_data['type'] == 'tcp':
json_from_post = {'TCP': post_data}
to_json.update(json_from_post)
with open('sw_templates.json', 'w', encoding='utf-8') as f:
json.dump(to_json, f, sort_keys=False, indent=4, separators=(',', ': '), ensure_ascii=False)
yong, только присмотрелся. Добавьте в конструктор __init__() класса MainWindow следующую строчку: super().__init__()
Ну и вызвать window.show() для отображения, собственно, виджета, тоже бы не помешало.
А ошибка ваша в банальной опечатке:
Добавьте self к formazhalob везде, где он отсутствует. То же самое относится к textzz.
yong, ну, это дурной тон, писать названия транслитом.
complaint_form и send_button не режут глаз и всем, кто знаком с английским, понятен смысл переменной.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
update()
. Для этого необходимо считать актуальное состояние конфига во временный словарь и потом просто обновить нужное поле. По итогу все будет выглядеть примерно так: