Электронная очередь в ДОУ
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc
media
sadiki
templates
.gitignore
ChangeLog
LICENSE
LICENSE-agpl-3.0.txt
README.rst
import_validation.py
manage.py
requirements.txt

README.rst

Требования к программному обеспечению

Операционная система GNU/Linux.

Для установки программы «Электронная очередь в ДОУ» в операционной системе должно быть установлено следующее ПО:

  • python2.7
  • git
  • postgresql ==9.1
  • postgresql-9.1-postgis
Пакеты python:
  • gdal ==1.9.0
  • psycopg2 ==2.4.1
  • Django ==1.4
  • pytils ==0.2.3
  • dateutil ==1.5
  • django-south ==0.7.5
  • httplib2 ==0.7.4
  • openid ==2.2.5
  • crypto ==2.6
  • imaging ==1.1.7
  • pisa ==3.0
  • xlrd ==0.6.1
  • xlwt ==0.7.4
  • xlutils ==1.3.2
  • django-zenforms >=0.1,<0.2
  • redsolutioncms.django-chunks >=0.2,<0.3
  • django-classy-tags ==0.3.4.1
  • redsolutioncms.django-trusted-html >=0.1,<0.2
  • ordereddict ==1.1
  • redsolutioncms.django-tinymce-attachment >=0.4, <0.5
  • django-social-auth ==0.7.23
  • redsolutioncms.django-hex-storage >=0.1, <0.2
  • djangorestframework ==2.4

1. Подготовка

  1. Для работы программы требуется создать для нее отдельную учетную запись в операционной системе.
  2. Создайте новую учетную запись СУБД без пароля и без прав создания учетной записи с таким же именем, как у учетной записи в операционной системе. При совпадении имен учетной записи в СУБД и ОС будет возможен доступ к СУБД без указания пароля, это позволит ограничить доступ из под других учетных записей.
  3. Создайте пустую базу данных в PostgreSQL, указав в качестве владельца учетную запись СУБД, созданную в пункте 2.
  4. Настройте географические расширения postgis для созданной БД.
  5. Назначьте все привелегии всем пользователем для таблиц geometry_columns, spatial_ref_sys и для представления geography_columns.
  6. Для проверки того, что учетные записи и БД были созданы правильно, попробуйте произвести подключение к созданной БД из под учетной записи программы в ОС. Подключение должно произойти без запроса пароля.

2. Установка и настройка

Установку дистрибутива следует выполнять под учётной записью программы.

  1. С помощью git клонируйте репозиторий программы (git://github.com/redsolution/electroochered.git) в каталог django (в дальнейшем называемый каталог программы), располагающийся в домашнем каталоге учетной записи программы.

  2. Параметры системы должны указываться в файле electroochered.conf, расположенном в каталоге .config/electroochered/, который расположен в домашнем каталоге учетной записи программы. В дистрибутив включен шаблон файла настроек с именем electroochered.conf.example, измените его имя на electroochered.conf и переместите в нужный каталог. Правами на чтение и изменение файла должна обладать только учетная запись приложения, это позволит ограничить доступ к параметрам системы из под других учетных записей.

  3. Настройте параметры соединения с БД. Для этого в файле electroochered.conf в каталоге программы укажите значения параметров для подключения к БД, которые перечислены ниже:

    - DATABASE_USER - имя учетной записи СУБД. Укажите имя созданной учетной записи в СУБД.
    - DATABASE_PORT - порт для подключения к СУБД. Укажите порт для подключения к БД(стандартный порт для PostgreSQL - 5432)
    - DATABASE_NAME - имя БД. Укажите имя созданной БД.
    
  4. Для проверки правильности настроек соединения с БД в каталоге программы выполните команду python manage.py dbshell. В результате должно произойти подключение к БД(будет запущен терминал psql).

  5. Для автоматического изменения статуса заявок настройте ежедневное выполнение команды manage.py auto_change_status из каталога программы.

  6. Для создания каталога со статическими файлами выполните команду python manage.py collectstatic --noinput из каталога программы.

  7. Убедитесь, что в результате выполнения предыдущего пункта в каталоге программы был создан каталог static со статическими файлами.

3. Настройка параметров системы “Электронной очереди”

В конфигурационном файле electroochered.conf необходимо указать значение для параметров:

  • SECRET_KEY - секретный ключ. Запустите в консоли команду python manage.py get_secret_key, которая генерирует уникальный ключ для текущей установки системы. Внимание! Данный ключ должен использоваться только для текущей установки системы. В целях безопасности этот ключ не должен быть известен посторонним людям. Несоблюдение этого требования может привести к повышению привелегий и удаленному выполнению кода.
  • SERVER_EMAIL - адрес, с которого будут отсылаться сообщения об ошибках.
  • WEBMASTER - адрес, на который будут высылаться сообщения об ошибках.
  • MUNICIPALITY_OCATO - номер окато муниципалитета (8 цифр).
  • REGION_NAME - название региона (используется при геокодировании адреса).
  • VK_APP_ID, VK_API_SECRET - идентификатор и секретный ключ приложения ВКонтакте. Создайте приложение ВКонтакте на странице http://vk.com/editapp?act=create, при создании необходимо указать тип приложения “Веб-сайт”. Данные параметры будут указаны в настройках приложения.
  • MAP_CENTER - координаты центра карты (широта и долгота).
  • MAP_ZOOM - уровень масштабирования карты. Подробности определения масштаба карты вы можете узнать на странице.

4. Начальное наполнение базы данных

Все действия следует выполнять в каталоге программы из под учетной записи программы.

  1. Для начального наполнения БД в каталоге программы выполните команды:

    python manage.py syncdb --noinput --migrate
    python manage.py update_initial_data
    python manage.py loaddata sadiki/core/fixtures/chunks_initial.json
    
  2. Для проверки правильности наполнения БД в каталоге программы выполните команду python manage.py validate_db_initial. Результатом выполнения должно быть сообщение Ошибок не обнаружено.

  3. Создайте учетную запись администратора в системе “Электронной очереди” с помощью команды:

    python manage.py create_administrator
    

Вам нужно будет ввести имя учетной записи, имя и фамилию пользователя и пароль учетной записи.

5. Настройка веб-сервера

Настройте веб-сервер следующим образом:

  1. По адресу, начинающемуся с /media/upload/ должны быть доступны статические файлы из каталога media/upload, расположенного в каталоге программы.
  2. По адресу, начинающемуся со /static/ должны быть доступны статические файлы из каталога static, расположенного в каталоге программы.
  3. Все остальные запросы должны обрабатываться скриптом wsgi.py из каталога программы, расположенном в каталоге sadiki, который должен быть запущен от имени учетной записи программы в ОС.

6. Проверка работы системы

  1. В браузере откройте страницу http://example.com/adm, заменив example.com на доменное имя, указанное при настройке веб-сервера. На странице должна отображаться форма для входа.
  2. Введите логин и пароль администратора системы, который был создан в разделе 4 пункте 2. После этого вы должны попасть в административный интерфейс. Если вам не удалось войти в административный интерфейс, то попробуйте снова создать учетную запись администратора.

7. Утилита для проверки импортируемых данных

Для проверки данных в дистрибутив системы включена утилита import_validation.py. Проверка файла для импорта должна происходить на клиентской машине, тем самым исключается попадание файла с персональными данными на сервер. Для работы данной утилиты в операционной системе должен быть установлены: python==2.7 пакеты python: xlrd==0.9 xlwt==0.7.5 xlutils==1.3.2 BeautifulSoup==3.2.1 Утилита не требует установки, достаточно просто скопировать ее из дистрибутива системы.

Для дальнейшей работы с системой вы можете ознакомиться с руководством пользователя.