Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#31465 closed Uncategorized (invalid)

"python3 manage.py shell" using IPython instead of Python.

Reported by: J Arun Mani Owned by: J Arun Mani
Component: Utilities Version: 3.0
Severity: Normal Keywords:
Cc: j.arunmani@… Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by J Arun Mani)

Hello, I was learning Django from the official docs.
To run the command python3 manage.py shell, I thought of using IPython, so I ran this command ipython3 manage.py shell. First the command gave me a list of available commands (for manage.py), then it gave me the IPython prompt. Me, confused, ran the same command with python3, but I still got IPython. I closed the shell and launched it again, I went back to home directory and checked if IPython and Python are working fine, yes they were, they were working with the right way.

So I cded the tutorial's directory and ran python3 manage.py shell but again got IPython shell.
The issue is why am I getting IPython when I run the command for normal Python interpreter?
I think Django has modified some environment flags or something else. I thought of posting this to mailing-list, as I'm a noob and this could be a "feature"; but I got an error that there is googlegroups cannot find "django-users" account. I have attached a link to the screenshot for sake of convenience.

My System:
Django installed using : pip (only for user, non-sudo)
OS : Debian 10
Python version : 3.7.3
Terminal : GNOME Terminal
Shell : fish
https://www.dropbox.com/s/df8gbju2pllmtow/django-bug.png

Change History (5)

comment:1 by J Arun Mani, 4 years ago

Owner: changed from nobody to J Arun Mani
Status: newassigned

comment:2 by Mariusz Felisiak, 4 years ago

Resolution: invalid
Status: assignedclosed

I don't see any issue in the ticket description. Using ipython is a documented behavior.

in reply to:  2 comment:3 by J Arun Mani, 4 years ago

Replying to felixxm:

I don't see any issue in the ticket description. Using ipython is a documented behavior.

But I'm not using django-admin shell -i ipython I ran the command like this python3 manage.py shell, previously (in previous tutorials of Django from other websites), this command invoked the default Python 3 interpreter, then why suddenly did it start using IPython?

comment:4 by J Arun Mani, 4 years ago

Description: modified (diff)

comment:5 by Mariusz Felisiak, 4 years ago

Documentation is clear for me: "By default, Django will use IPython or bpython if either is installed." so if you have IPython or bpython installed then Django will use one of them. If you have both you can specify which one you want with -i argument.

Note: See TracTickets for help on using tickets.
Back to Top