manage.py file has an option to use settings file you need:
./manage.py runserver --settings=mycustomsettings
But it refuses running if settings file is not present:
Error: Can't find the file 'settings.py' in the directory containing './manage.py'. It appears you've customized things.
You'll have to run django-admin.py, passing it your settings module.
(If the file settings.py does indeed exist, it's causing an ImportError somehow.)
settings.py file should not be mandatory in that case!
I have a monkey-patch for manage.py file:
# HACK BEGIN
from optparse import OptionParser, make_option
settings_module = OptionParser(option_list=[make_option('--settings')]).parse_args(sys.argv[:]).settings
# HACK END
from django.core.management import execute_manager
if not settings_module: # HACK
import settings # Assumed to be in the same directory.
sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__)
else: # HACK
settings = __import__(settings_module) # HACK
if __name__ == "__main__":