0

私は Ubuntu 14.04 を使用しており、バージョン 2.7 のPootleをインストールしようとしています。これは、pip ではなく Git を使用するように言われました。これは、このバージョンが安定しておらず、pip パッケージがないためだと思います。 / はまだ pip で使用するように設定されていません。しかし、Python に慣れていない (そして、まったくプログラマーではない) ため、データベースの初期化に問題がありますmanage.py

これまでのところ、マスター ブランチをチェックアウトし、/srv/www/pootle/projectDjango/usr/local/lib/python2.7/dist-packages/djangoをバージョン 1.7.7にアップグレードしましpipた。( Pootle 2.7 の要件を参照してください。)

以前に pip と を使用して Pootle バージョン 2.5 を正常にインストールし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.

/srv/www/pootle/pootle.confこれは、秘密鍵やその他の構成を持つ私の設定ではなく、Django の設定が使用されているためだと思います。

--settings=pootleオプションをmanage.pyandで使用しようとしましたdjango-admin.pyが、シンボリックリンクを in/usr/local/lib/python2.7/dist-packages/django//usr/local/lib/python2.7/dist-packages/django/conf/付けpootle.settingsて、 my につながるという名前を付けましpootle.confたが、それでもThe SECRET_KEY setting must not be empty.

4

1 に答える 1

3

ここでの違いは、Pootle を pip 経由でインストールすると、カスタム設定ファイルへのパスを含め、設定を行う便利なランナーpootleを備えたコマンドを使用できることです。git clone を使用すると、便利な魔法は利用できません。

簡単に言うと、POOTLE_SETTINGS環境変数をカスタム設定ファイルのパスに設定する必要があります。

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

あるいは、git クローンを試しているので、設定ファイルの名前を90-custom-settings-local.conf のような名前に変更することもできます( 90-は.conf拡張子と同様に重要です。-localは便利なので便利です)。 Pootle の.gitignore 内)をpootle/settings/にドロップすると、それが取得されます。このメソッドで環境変数を設定する必要はありません。POOTLE_SETTINGS

于 2015-04-29T20:05:41.900 に答える