如何使用 Git 安装 Pootle?

How can I install Pootle using Git?

我正在使用 Ubuntu 14.04 并正在尝试安装 Pootle 的 2.7 版,我被告知我应该使用 Git 而不是 pip,我认为是因为此版本不稳定,因此没有 pip package/is 尚未设置为与 pip 一起使用。但是不熟悉 Python (而且我根本不是一个程序员)我在使用 manage.py.

初始化数据库时遇到了麻烦

到目前为止,我已经将主分支签出到 /srv/www/pootle/project,并使用 pip/usr/local/lib/python2.7/dist-packages/django 中的 Django 升级到版本 1.7.7。 (参见 Pootle 2.7 requirements。)

我之前使用 pip 和 pootle setup 成功安装了 Pootle 2.5 版来初始化数据库,但是因为 Pootle 2.7 有 removed the pootle setup command,我一直在尝试用 ./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.pydjango-admin.py 一起使用,并在 /usr/local/lib/python2.7/dist-packages/django//usr/local/lib/python2.7/dist-packages/django/conf/ 中使用名为 [=25= 的符号链接] 导致我的 pootle.conf,但仍然得到 The SECRET_KEY setting must not be empty

这里的不同之处在于,当您通过 pip 安装 Pootle 时,您可以使用 pootle 命令,该命令有一个 convenience runner 可以为您进行设置,包括自定义设置的路径文件。当您使用 git 克隆时,便利魔法将不可用。

长话短说,您需要将 POOTLE_SETTINGS 环境变量设置为自定义设置文件的路径。

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

或者,由于您正在尝试 git 克隆,您可以将设置文件重命名为 90-custom-settings-local.conf90- 很重要,还有 .conf 扩展;-local 很方便它在 Pootle's .gitignore) 中并将其放入 pootle/settings/,它会拾取它。无需使用此方法设置 POOTLE_SETTINGS env var。