﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
5201	Settings won't load when inside a directory named settings	Deryck Hodge <deryck@…>	Adrian Holovaty	"I think something has happened since the refatoring of management so that you can no longer have a directory named settings which contains your settings files.  For example, I have a directory on my PYTHONPATH which has all my apps I'm working on and then a settings directory which has devel.py and apache.py inside.  Something like:

{{{
devel_dir
  -- app1
  -- app2
  -- settings
         -- devel.py
         -- apache.py
}}}

Normally, I run the with DJANGO_SETTINGS_MODULE=settings.devel, but I noticed today that this no longer works.

See this Traceback that might help explain and also shows this worked with a SVN rev prior to r5898

{{{
naminanu:~ hodgedg$ export PYTHONPATH=~/projects/django_trunk_r5897:~/projects/paperlate
naminanu:~ hodgedg$ export DJANGO_SETTINGS_MODULE=settings.devel
naminanu:~ hodgedg$ django-admin.py validate 
0 errors found.
naminanu:~ hodgedg$ export PYTHONPATH=~/projects/django/SVN/django/trunk:~/projects/paperlate
naminanu:~ hodgedg$ export DJANGO_SETTINGS_MODULE=settings.devel
naminanu:~ hodgedg$ django-admin.py validate 
Traceback (most recent call last):
  File ""/Users/hodgedg/projects/django/SVN/django/trunk/django/bin/django-admin.py"", line 5, in <module>
    management.execute_from_command_line()
  File ""/Users/hodgedg/projects/django/SVN/django/trunk/django/core/management/__init__.py"", line 171, in execute_from_command_line
    utility.execute(argv)
  File ""/Users/hodgedg/projects/django/SVN/django/trunk/django/core/management/__init__.py"", line 124, in execute
    command.execute(*args[1:], **options.__dict__)
  File ""/Users/hodgedg/projects/django/SVN/django/trunk/django/core/management/base.py"", line 28, in execute
    translation.activate('en-us')
  File ""/Users/hodgedg/projects/django/SVN/django/trunk/django/utils/translation/__init__.py"", line 76, in activate
    return real_activate(language)
  File ""/Users/hodgedg/projects/django/SVN/django/trunk/django/utils/translation/__init__.py"", line 31, in delayed_loader
    if settings.USE_I18N:
  File ""/Users/hodgedg/projects/django/SVN/django/trunk/django/conf/__init__.py"", line 28, in __getattr__
    self._import_settings()
  File ""/Users/hodgedg/projects/django/SVN/django/trunk/django/conf/__init__.py"", line 57, in _import_settings
    self._target = Settings(settings_module)
  File ""/Users/hodgedg/projects/django/SVN/django/trunk/django/conf/__init__.py"", line 85, in __init__
    raise EnvironmentError, ""Could not import settings '%s' (Is it on sys.path? Does it have syntax errors?): %s"" % (self.SETTINGS_MODULE, e)
EnvironmentError: Could not import settings 'settings.devel' (Is it on sys.path? Does it have syntax errors?): No module named devel
naminanu:~ hodgedg$ cp -r ~/projects/paperlate/settings/ ~/projects/paperlate/testing/
naminanu:~ hodgedg$ export DJANGO_SETTINGS_MODULE=testing.devel
naminanu:~ hodgedg$ django-admin.py validate 
naminanu:~ hodgedg$
}}}

Notice that renaming the directory to something other than ""settings"" fixes the problem.  Also, this Tracebook occurred in Trunk against r5919."		closed	Core (Management commands)	dev		invalid			Unreviewed	0	0	0	0	0	0
