2017-05-12 11 views
0

私はSlack Botで作業していますが、ほとんどはWindowsで異なるいくつかの点を除き、tutorialに従っています。これらのうちの1つは、BOT_IDおよびSLACK_BOT_TOKEN環境変数を設定することでした。私はをvirtualenvセッションのコマンドプロンプトで使用しました。すべてを閉じてプロジェクトに戻ったので、BOT_IDとSLACK_BOT_TOKENはもはや変数ではありませんでした。VirtualEnvセッションで環境変数をリセットする必要があります

これらの変数を毎回再作成する必要がないように設定するにはどうすればよいですか?

私は単純にこれらをシステム変数として追加できますが、複数のスラックボットを作成していた場合はどうなりますか?標準的なプラクティスは何ですか? SLACK_BOT_TOKEN_1、SLACK_BOT_TOKEN_2など?

さらに、プロジェクトを開いてPythonコードを実行すると、毎回virtualenvをアクティブにする必要がありますか?または、単にPythonコードを実行できますか?

+0

あなたの仮想環境では、 'bin'でusullyに' post_activate'のようなスクリプトを2つ置いてください。 –

+0

私はWindows上でvirtualenvを実行しています。 'bin 'はありません。単にactivate.batファイルがあったScriptsフォルダです。ポストアクティベーションスクリプトは表示されません。 deactivate.batファイルがあります。 – Matt

+0

これを 'activate.bat'の最後に置きます。 –

答えて

0

virtualenvのルートディレクトリに.envファイルを作成し、変数を保存します。私は、このようにジャンゴのためにそれを使用します。

EMAIL_HOST_PASSWORD='some_password' 
DJANGO_DEBUG=True 
SECRET_KEY='a_complex_key' 
+0

Linux用.envファイルはありますか?私は1つ作成しようとしましたが、動作しませんでした。私は拡張子を.envにすることを余儀なくされ、認識されませんでした。私はバッチファイルに環境変数を直接入れることができます。 – Matt

+0

これは明らかに機能しません。バッチファイルはvirtualenvのactivate.batを実行し、変数を設定しませんでした。 – Matt

+0

私はそれをlinuxとmacで使っていますが、私はそれもWindowsでも使えると読んでいます。それが私が投稿した理由です。 – diek

-1

this other answerで説明したソリューションは、私のために働きました。エクスポート行をbin/activateファイルに追加します。

関連する問題