#29114: Please make `django-admin shell` easier to use.
-------------------------------------+-------------------------------------
Reporter: pannous | Owner: nobody
Type: Uncategorized | Status: new
Component: Uncategorized | Version: 2.0
Severity: Normal | Resolution:
Keywords: django-admin | Triage Stage:
manage.py shell repl | Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Old description:
> Please make `manage.py shell` work out of the box:
>
> > django-admin shell
> django.core.exceptions.ImproperlyConfigured: Requested setting USE_I18N,
> but settings are not configured. You must either define the environment
> variable DJANGO_SETTINGS_MODULE or call settings.configure() before
> accessing settings.
>
> > manage.py shell
> django.core.exceptions.ImproperlyConfigured: Requested setting USE_I18N
> ...
>
> After 20 minutes I found the 'solution' to the this problem, but the
> second issue is unresolved:
>
> django-admin shell --settings=poll.settings
> TypeError: catch_config_error() missing 1 required positional argument
>
> full log:
> ```
> django-admin shell --settings=poll.settings
> Traceback (most recent call last):
> File "/usr/local/bin/django-admin", line 11, in <module>
> sys.exit(execute_from_command_line())
> File "/usr/local/lib/python3.5/dist-
> packages/django/core/management/__init__.py", line 371, in
> execute_from_command_line
> utility.execute()
> File "/usr/local/lib/python3.5/dist-
> packages/django/core/management/__init__.py", line 365, in execute
> self.fetch_command(subcommand).run_from_argv(self.argv)
> File "/usr/local/lib/python3.5/dist-
> packages/django/core/management/base.py", line 288, in run_from_argv
> self.execute(*args, **cmd_options)
> File "/usr/local/lib/python3.5/dist-
> packages/django/core/management/base.py", line 335, in execute
> output = self.handle(*args, **options)
> File "/usr/local/lib/python3.5/dist-
> packages/django/core/management/commands/shell.py", line 99, in handle
> return getattr(self, shell)(options)
> File "/usr/local/lib/python3.5/dist-
> packages/django/core/management/commands/shell.py", line 35, in ipython
> from IPython import start_ipython
> File "/usr/local/lib/python3.5/dist-packages/IPython/__init__.py", line
> 54, in <module>
> from .core.application import Application
> File "/usr/local/lib/python3.5/dist-
> packages/IPython/core/application.py", line 23, in <module>
> from traitlets.config.application import Application,
> catch_config_error
> File "/usr/local/lib/python3.5/dist-
> packages/traitlets/config/__init__.py", line 6, in <module>
> from .application import *
> File "/usr/local/lib/python3.5/dist-
> packages/traitlets/config/application.py", line 120, in <module>
> class Application(SingletonConfigurable):
> File "/usr/local/lib/python3.5/dist-
> packages/traitlets/config/application.py", line 291, in Application
> def initialize(self, argv=None):
> ```
New description:
Please make `manage.py shell` work out of the box:
{{{
> django-admin shell
django.core.exceptions.ImproperlyConfigured: Requested setting USE_I18N,
but settings are not configured. You must either define the environment
variable DJANGO_SETTINGS_MODULE or call settings.configure() before
accessing settings.
}}}
{{{
> manage.py shell
django.core.exceptions.ImproperlyConfigured: Requested setting USE_I18N
...
}}}
After 20 minutes I found the 'solution' to the this problem, but the
second issue is unresolved:
{{{
django-admin shell --settings=poll.settings
TypeError: catch_config_error() missing 1 required positional argument
}}}
full log:
{{{
django-admin shell --settings=poll.settings
Traceback (most recent call last):
File "/usr/local/bin/django-admin", line 11, in <module>
sys.exit(execute_from_command_line())
File "/usr/local/lib/python3.5/dist-
packages/django/core/management/__init__.py", line 371, in
execute_from_command_line
utility.execute()
File "/usr/local/lib/python3.5/dist-
packages/django/core/management/__init__.py", line 365, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python3.5/dist-
packages/django/core/management/base.py", line 288, in run_from_argv
self.execute(*args, **cmd_options)
File "/usr/local/lib/python3.5/dist-
packages/django/core/management/base.py", line 335, in execute
output = self.handle(*args, **options)
File "/usr/local/lib/python3.5/dist-
packages/django/core/management/commands/shell.py", line 99, in handle
return getattr(self, shell)(options)
File "/usr/local/lib/python3.5/dist-
packages/django/core/management/commands/shell.py", line 35, in ipython
from IPython import start_ipython
File "/usr/local/lib/python3.5/dist-packages/IPython/__init__.py", line
54, in <module>
from .core.application import Application
File "/usr/local/lib/python3.5/dist-
packages/IPython/core/application.py", line 23, in <module>
from traitlets.config.application import Application,
catch_config_error
File "/usr/local/lib/python3.5/dist-
packages/traitlets/config/__init__.py", line 6, in <module>
from .application import *
File "/usr/local/lib/python3.5/dist-
packages/traitlets/config/application.py", line 120, in <module>
class Application(SingletonConfigurable):
File "/usr/local/lib/python3.5/dist-
packages/traitlets/config/application.py", line 291, in Application
def initialize(self, argv=None):
}}}
--
Comment (by Ramiro Morales):
Please prove more details on what steps you've performed before reaching
this point. like:
* How have you installed Django
* Have you installed it in such a way that `django-admin.py` got copied to
`/usr/local/bin` or is it a remnant from another installation?
* Des your Django project already have some apps added to `INSTALLED_APPS`
or is it a recently created
* Was this Django project working before?
The traceback seems to have been cut but there traces of a `'traitlets'`
Django application. Is it an app of yours or a third party one? Can you
try the `manage.py` commands you posted without removing that app first
from the Django project? Or maybe create a new project and try the
commands there si yo can detect if the problem is actually caused by
Django and not by broken/out of date apps.
Please reopen if yo can provide such information.
--
Ticket URL: <https://code.djangoproject.com/ticket/29114#comment:1>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/065.4d9acc5e8f5674e2d2fc8cbffac51d66%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.