Я написал скрипт на python, который создает конфигурацию переключателей из файлов .yaml.
И я не уверен, как создать веб-форму, которая соответствует моим потребностям.
Я полностью открыт, как этого добиться. Мне просто нужен способ опубликовать значения в моем скрипте Python.
Моя HTML-форма выглядит так:
<form method="POST">
<input type="text" name="port"></input>
<input type="text" name="port.mode"></input>
</form>
Опубликованные данные попадают в Flask следующим образом:
[('port', 'Port1'), ('port.mode', 'Access')]
Я бы хотел получить такие данные:
{"ports": {"port1": {"mode": "Access"}}}
++ Update
Я уже использую Jinja для создания шаблона.
Образец шаблона дзиндзя:
{%- for name,options in ports.items() %}
interface {{ name }}
{%- if options.mode == 'access' %}
switchport mode access
{% else %}
switchport mode trunk
{% endif %}
Моя проблема - между формой HTML и механизмом шаблонов. Я не уверен, как смоделировать мою форму HTML, чтобы соответствовать моим потребностям.
2 способа, которыми я могу думать об этом.
1. Измените запрос HTTP Post в Javascript перед отправкой
2. Написание кода Python на стороне сервера, чтобы привести данные HTTP-сообщения в правильную форму для моего шаблона jinja.
Но я полностью открыт для метода, которым я пользуюсь. Я не ограничен флягой, дзиндзя и питоном.