I am trying to set my sensitive data into my .env file.
I did some researched and created this file successfully.
https://ultimatedjango.com/learn-django/lessons/handling-sensitive-keys/
https://django-environ.readthedocs.io/en/latest/
I am able to set my secret key and database settings and access it through my settings.py, everything works fine. Like for example -
env.db()SECRET_KEY = os.environ["SECRET_KEY"]
DATABASES = {
'default': env.db(), # Raises ImproperlyConfigured exception if DATABASE_URL not in os.environ
}
And database details prints in my python shell. And django-oscar runs with no problem.
Now, I am trying to set my Paypal details within the same .env file, but seems to be having problems. in my .env file I have the setting as -
#PAYPAL SETTINGS
export PAYPAL_MODE=sandbox # sandbox or live
export PAYPAL_CLIENT_ID=my_paypal_client_id
export PAYPAL_CLIENT_SECRET=my_payal_secret
#PAYPAL SETTINGS
export PAYPAL_API_USERNAME=mypaypalusername.com
export PAYPAL_API_PASSWORD=my_password
export PAYPAL_API_SIGNATURE=my_signature
In my settings.py I am trying to make a reference to it so my application can access it -
#PAYPAL SETTINGS
PAYPAL_API_USERNAME = os.environ["PAYPAL_API_USERNAME"]
PAYPAL_API_PASSWORD = os.environ[PAYPAL_API_PASSWORD]
PAYPAL_API_SIGNATURE = os.environ[PAYPAL_API_SIGNATURE]
import paypalrestsdk
PAYPAL_MODE=os.environ['PAYPAL_MODE']
PAYPAL_CLIENT_ID=os.environ['PAYPAL_CLIENT_ID']
PAYPAL_CLIENT_SECRET=os.environ['PAYPAL_CLIENT_SECRET']
I get errors when running server -
PAYPAL_API_USERNAME=os.environ[PAYPAL_API_USERNAME]
NameError: name 'PAYPAL_API_USERNAME' is not defined
I have done some research but not got an answer specifically for this problem. Please, can somebody kindly point me to the right direction?
Thank you.
use
os.environ.get('PAYPAL_API_USERNAME')