Django-Пиви является приложение Django, для улучшения вашего регистрацию приложений Django.
Установка
Начните с Django 1.3 или выше; Пиви предназначен для использования с новой конфигурацией регистрации первого доступного в этой версии.
Чтобы установить, просто запустите:
пункт установить Django-Пиви
Конфигурация
& NBSP; Добавить Пиви вашей установке INSTALLED_APPS.
& NBSP; Чтобы избежать вмешательства транзакций базы данных вашего приложения, журналы Пиви в своей базе данных по умолчанию. Из-за проблем Юга с несколькими базами данных, самый простой способ, чтобы сделать эту работу, чтобы создать второй куплет базы данных в settings.DATABASES, который отражает настройки по умолчанию под другим именем, например,
& NBSP; БАЗЫ ДАННЫХ = {
& NBSP; 'по умолчанию': {
& NBSP; 'ДВИГАТЕЛЬ': 'django.db.backends.postgresql_psycopg2 ",
& NBSP; "NAME": "defaultdb",
& NBSP; "пользователь": "DbUser",
& NBSP; 'Пароль': 'пароль_базы_данных,
& NBSP; 'TEST_CHARSET': 'utf8'
& NBSP;},
& NBSP; 'Пиви ": {
& NBSP; 'ДВИГАТЕЛЬ': 'django.db.backends.postgresql_psycopg2 ",
& NBSP; "NAME": "defaultdb",
& NBSP; "пользователь": "DbUser",
& NBSP; 'Пароль': 'пароль_базы_данных,
& NBSP; 'TEST_CHARSET': 'utf8'
& NBSP;}
& NBSP;}
& NBSP; Это должно получить ваши таблицы создается / мигрировали должным образом, и позволяют Пиви работать с собственной подключения к базе данных. Когда совершает записи журнала, сделки вашего приложения не будут затронуты.
& NBSP; Если вы хотите, чтобы положить Пиви в действительно отдельной базе данных, вы, вероятно, хотите, чтобы отказаться Южной миграции для него, из-за некоторых проблем Юг с несколькими базами данных. Вы можете сказать, Юг, чтобы игнорировать его, добавив в настройках:
& NBSP; SOUTH_MIGRATION_MODULES = {
& NBSP; 'Пиви »:« игнорировать »,
& NBSP;}
& NBSP; В этом случае, вы просто создать таблицы Пиви с SyncDB.
& NBSP; Добавить маршрутизатор Пиви базы данных:
& NBSP; DATABASE_ROUTERS = ['peavy.routers.DjangoDBRouter']
& NBSP; Добавьте конфигурацию регистрации. Например:
& NBSP; РЕГИСТРАЦИИ = {
& NBSP; 'версия': 1,
& NBSP; '' disable_existing_loggers: Правда,
и NBSP; '' форматтеры: {
& NBSP; 'по умолчанию': {
& NBSP; 'Формат': '[% (asctime) S% (имя) с% (levelname) с]% (сообщение) с "
& NBSP;},
& NBSP; 'Основная': {
& NBSP; 'Формат': '[% (asctime) S% (UUID) S% (пользователь) S% (имя) с% (levelname) с]% (сообщение) с "
& NBSP;},
& NBSP; «мета»: {
& NBSP; 'Формат': '[% (asctime) S% (client_ip) S% (UUID) С% (пользователь) S% (имя) с% (levelname) с]% (сообщение) с "
& NBSP;},
& NBSP;},
и NBSP; '' фильтры: {
& NBSP; 'Основная': {
& NBSP; '()': 'peavy.filters.BasicFilter ",
& NBSP;},
& NBSP; «мета»: {
& NBSP; '()': 'peavy.filters.MetaFilter ",
& NBSP;}
& NBSP;},
и NBSP; '' обработчики: {
& NBSP; 'нулевой': {
& NBSP; 'уровень': 'DEBUG',
& NBSP; 'класс': 'django.utils.log.NullHandler ",
& NBSP;},
& NBSP; 'консоль': {
& NBSP; 'уровень': 'DEBUG',
& NBSP; 'класс': 'logging.StreamHandler ",
& NBSP; '' фильтры: ['Основная', 'Мета'],
& NBSP; 'форматирования': 'Основная'
& NBSP;},
& NBSP; 'mail_admins ": {
& NBSP; 'уровень': 'ОШИБКА',
& NBSP; 'класс': 'peavy.handlers.AdminEmailHandler ",
& NBSP; '' фильтры: ['Основная', 'Мета'],
& NBSP; 'форматирования': 'мета'
& NBSP;},
& NBSP; 'Пиви ": {
& NBSP; 'уровень': 'ИНФО ",
& NBSP; 'класс': 'peavy.handlers.DjangoDBHandler ",
& NBSP; '' фильтры: ['Основная', 'Мета'],
& NBSP; 'форматирования': 'мета'
& NBSP;}
& NBSP;},
и NBSP; '' регистраторы: {
& NBSP; 'Джанго ": {
& NBSP; '' обработчики: ['нулевые'],
& NBSP; 'распространяться ": Правда,
& NBSP; 'уровень': 'ИНФО ",
& NBSP;},
& NBSP; 'django.request ": {
& NBSP; '' обработчики: ['Пиви »,« mail_admins'],
& NBSP; 'уровень': 'ОШИБКА',
& NBSP; 'распространяться ": Ложь,
& NBSP;},
& NBSP; 'MyApp': {
& NBSP; '' обработчики: ['консоль', 'Пиви "],
& NBSP; 'уровень': 'DEBUG',
& NBSP;}
& NBSP;}
& NBSP;}
& NBSP; Добавить к peavy.middleware.RequestLoggingMiddleware MIDDLEWARE_CLASSES.
& NBSP; Выполнить manage.py мигрировать, чтобы создать таблицы базы данных, или если вы действительно регистрации на второй базе и имеют инвалидов Южной миграции для Пиви, запустите manage.py SyncDB.
Последние два шага могут быть пропущены, если вы не хотите, чтобы интерфейс.
& NBSP; При желании, добавить peavy.urls к вашей конфигурации URL, чтобы получить интерфейс:
& NBSP; urlpatterns + = узоры ('',
& NBSP; (г '^ Пиви /', включают в себя ("peavy.urls ')),
& NBSP;)
& NBSP; Запустите manage.py collectstatic скопировать СМИ Пиви на место.
Демо-приложение
Пиви поставляется с примера приложения, которое демонстрирует, как войти с ним, и позволяет проверить интерфейс. Чтобы запустить его:
& NBSP; Создать virtualenv для него, а затем активировать virtualenv.
& NBSP; Скопируйте пример приложения с вашего копии Django-Пиви в virtualenv:
& NBSP; Rsync -av peavy_demo / $ VIRTUAL_ENV / peavy_demo /
& NBSP; Установите свои требования ПИО:
& NBSP; пункт установить -r $ VIRTUAL_ENV / peavy_demo / requirements.txt
& NBSP; Настройка базы данных PostgreSQL в в соответствии с параметрами Django. Вы, конечно, можете использовать другую базу данных, но это должен поддерживать параллельных транзакций (так SQLite вне), и вы будете иметь, чтобы настроить параметры и установки адаптера себя.
& NBSP; Настройте PYTHONPATH подобрать демо приложение:
& NBSP; экспорт PYTHONPATH = $ VIRTUAL_ENV: $ PYTHONPATH
& NBSP; Установите переменную окружения DJANGO_SETTINGS_MODULE:
& NBSP; экспорт DJANGO_SETTINGS_MODULE = peavy_demo.settings
& NBSP; Run "Django-Admin SyncDB", чтобы заполнить базу данных и создать суперпользователя.
& NBSP; Run "Django-Admin мигрируют" для создания таблиц Пиви.
& NBSP; Запустите devserver:
django-admin.py runserver
& NBSP; Перейдите к HTTP:. // локальный: 8000 /, введите кино цитату, а затем проверить регистрацию по адресу: // локальный: 8000 / Пиви /
Особенности :
- Middleware, чтобы пометить каждый запрос с уникальным ID.
- Вход фильтры, чтобы захватить запроса метаданных как пользователь, удаленный IP, и заголовков.
- Погрузчики для ведения журнала:
- Сбор информации исключений, в том числе копию страницы ошибок сервера Django, в базе данных.
- Отправка уведомления об ошибках на админов, не раскрывая конфиденциальной информации, как содержание request.POST.
- Маршрутизатор базы данных для отправки записей журнала в отдельную базу данных.
- простой пользовательский интерфейс для просмотра записей журнала в базе данных.
Требования
- Python
- Джанго
Комментарии не найдены