You don't need to set PYTHONPATH
variable environment to your django project for running that, when your settings.py
is inside a package or is a module that is importable with manage.py
.
The PYTHONPATH is a list of directories Python goes through to search for modules and files.
If you need to add a path of one library or your root path of project to it, you can do that in your code.
For example in manage.py
with:
import sys
sys.path.append("/home/my/project")
Or:
import os
BASE_PATH = os.path.abspath(os.path.dirname(__file__))
sys.path.append(BASE_PATH + '/src/folder/of/my/project/')
And each django project has own manage.py
file that set DJANGO_SETTINGS_MODULE
enivoronment itself, and you don't need to set that.
I think if your manage.py
have this line:
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myplanet.settings")
Then, you just need to have this structure for your project:
myplanet # It's a project folder
myplanet # It's a package
__init__.py
settings.py
manage.py
And you can run your project with python manage.py runserver
without set PYTHONPATH
environment variable.