Часто, в территориально и инфраструктурно разнесенных офисах предприятия, сотрудники пользуются «файликом» для поиска номеров других сотрудников. Это связанно либо с отсутствием нормального корп.портала, бардаком в АД либо с ее отсутствием вообще.

Задача:

  • Создать web справочник для компании со множеством партнерских и дочерних офисов;
  • Минимальный интерфейс для пользователей;
  • Вывод информации в табличном виде и детальный вывод отдельно взятого контакта;
  • Автодонабор имени в строке поиска;
  • Обеспечить возможность редактирования записей справочника секретарями офисов;
  • Обеспечить возможность ограничения прав на редактирование справочника;
  • Возможность вывести данные отдельного предприятия;
  • Отдельное отображение общих (сервисных) номеров.

Прочитав пару отличных статей (раз, два) можно было не морочить голову, но
офисы имеют разную инфраструктуру и невозможно получить доступа в АД и мне очень хотелось поупражняться в любимом Python.

В моем проекте на Github-е будет уже заполненная тестовая база SQLite.

К сожалению, SQLite не поддерживает INSERT в представления (VIEW), поэтому в проекте не реализована возможность ограничить редактирования секретарями определенного офиса контактов только своего офиса. При использовании же связки MySQL/Flask-Admin — это возможно.

Ссылка на github

Интерфейс поиска










Админ. интерфейс реализован с помощью библиотеки Flask-Admin


login: demo
password: demo!