Как я могу установить Pootle с помощью Git?

Я использую Ubuntu 14.04 и пытаюсь установить версию 2.7 Pootle, которую мне сказали, что я должен делать с Git, а не с pip, что, я думаю, объясняется тем, что эта версия нестабильна и поэтому не имеет пакета pip / еще не настроен для использования с pip. Но не будучи знакомым с Python (и совсем не очень программистом), у меня возникают проблемы с инициализацией базы данных с помощью manage.py,

Пока что я проверил основную ветку /srv/www/pootle/project и модернизировал Django в /usr/local/lib/python2.7/dist-packages/django до версии 1.7.7 с использованием pip, (См. Требования Pootle 2.7.)

Ранее я успешно установил Pootle версии 2.5 с помощью pip и pootle setup инициализировать базу данных, но потому что Pootle 2.7 удалил pootle setup команда, я пытался инициализировать базу данных с ./manage.py initdb, Это приводит к:

Traceback (most recent call last):
  File "./manage.py", line 20, in <module>
    cmd_log(*sys.argv)
  File "/srv/www/pootle/project/pootle/core/log.py", line 61, in cmd_log
    fn = settings.LOGGING.get('handlers').get('log_action').get('filename')
  File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 46, in __getattr__
    self._setup(name)
  File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 42, in _setup
    self._wrapped = Settings(settings_module)
  File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 115, in __init__
    raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.

Я предполагаю, что это потому, что используются настройки Django, а не мои настройки в /srv/www/pootle/pootle.conf который имеет мой секретный ключ и другой конфиг.

Я пытался использовать --settings=pootle вариант с manage.py а также django-admin.py, с символической ссылкой в /usr/local/lib/python2.7/dist-packages/django/ а также /usr/local/lib/python2.7/dist-packages/django/conf/ названный pootle.settings приводя к моему pootle.conf, но все же получить The SECRET_KEY setting must not be empty,

1 ответ

Решение

Разница в том, что когда вы устанавливаете Pootle через pip, вы pootle команда, которая имеет удобный бегунок, который настраивает для вас вещи, включая путь к файлу пользовательских настроек. Когда вы используете git clone, удобная магия недоступна.

Короче говоря, вам нужно установить POOTLE_SETTINGS переменная окружения к пути вашего файла пользовательских настроек.

$ POOTLE_SETTINGS=/srv/www/pootle/pootle.conf python manage.py initdb

В качестве альтернативы, и так как вы пробуете git clone, вы можете переименовать файл настроек в что-то вроде 90-custom-settings-local.conf (важно значение 90-, а также расширение .conf; -local удобен, так как в .gitignore Pootle) и поместите его в pootle / settings /, и он его заберет. Нет необходимости устанавливать POOTLE_SETTINGS env var с этим методом.

Другие вопросы по тегам