Tim Graham,

How do you install django? Are you using virtualenv ?

Best,

Rafael Henter


On Thursday, March 31, 2016 at 2:15:05 PM UTC-3, Tim Graham wrote:
>
> Ben Welsh (palewire) raised a proposal on a GitHub pull request [0]:
>
> I've seen newbies flounder when they receive this error after running 
> manage.py.
>
> $ python manage.py
> Traceback (most recent call last):
>   File "manage.py", line 7, in <module>
>     from django.core.management import execute_from_command_line
> ImportError: No module named django.core.management
>
> The root cause is almost always simple, like forgetting install Django 
> with pip or neglecting to "activate" a virtual environment. But the Python 
> jargon doesn't do much to help people new to our world connect the dots. 
>
> My proposal: Catch that error and print out a more verbose message that 
> explains to the user exactly what's wrong. Here's my draft. I'd welcome any 
> changes, but I think something along these lines could better welcome new 
> people into Django.
>            
> Traceback (most recent call last):
>   File "manage.py", line 11, in <module>
>     installed and available on your PATH variable?")
> ImportError: Couldn't import Django. Are you sure it's installed and 
> available on your PYTHONPATH environment variable? Did you forget to 
> activate a virtual environment?
>
>
>
> ---------------------
> Claude says, "I'm not convinced about this. Aren't we hiding other 
> possibly helpful import errors (at least on Python 2)?"
> Aymeric says, "I share Claude's concern. We've been constantly removing 
> that sort of "helpful" exception wrapping from Django"
> Aymeric again, after further investigation, "Importing 
> django.core.management doesn't ripple too far. Specifically it doesn't 
> import any of the user's code. This reduces the likelihood of masking 
> useful errors. It will mask exception info if Django is installed 
> incorrectly, for instance because two installs happened in the same 
> location (but I think that's less likely since pip/virtualenv became 
> mainstream and since we added code to setup.py to detect existing installs).
>
> Does anyone else have opinions on the change? I suppose another option 
> could be to try to reraise the original exception with the "helpful 
> message" added.
>
>
> [0] https://github.com/django/django/pull/6314
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/5cd2ada4-e61e-4cb3-9fad-a71cce3d29d7%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to