ViewDoesNotExist error on linux but same code works on windows, why?
Question: I'm currently trying to learn django and I've been messing around with an idea
for a website on my local machines. I've run into the following error which I
don't seem to be able to solve.

When I run the development server on my windows machine everything works as I
expect it to, however, when I run the (same) code on my linux machine I get a
ViewDoesNotExist error. However the view definitely exists in the views.py
file and the path is definitely set up correctly (as I can see from the
traceback).

I've read that for some reason django sometimes provides these error messages
when in actual fact it has a problem with something else, maybe something
imported by the views.py file so I ran

`python manange.py shell`

and tried to import my views, which failed. But my views.py file doesn't
import anything other than my models from my models.py file so I tried to
import them manually and I found that only one of the models would import
properly and the other two would always fail, for example when trying to run:

`from racing.models import Event`

I get the following error

`ImportError: cannot import name Event`

However, when I run:

`from racing.models import Race`

It works fine and I can work with the Race class in the shell

It is as if it can't even see them? All the code can be found here:
<https://github.com/sj175/ulmk>

If anyone could help me figure out how to solve this error so that I can
continue using django on my linux machine I would be very grateful.


Answer: using djangos `manage.py startproject` should create directory like:

    
    
    cms/
        manage.py
        cms/
            __init__.py
            settings.py
            urls.py
            wsgi.py
    

It looks like this is the case with `cms`. But it looks like your `apps` are a
directory higher then they should be:

    
    
    cms/
        manage.py
        cms/
            __init__.py
            settings.py
            urls.py
            wsgi.py
    coltrane/
    racing/
    tagging/
    

when by default i believe those apps should be inside the `cms` directory, ie
inside your django project

    
    
    cms/
        manage.py
        cms/
            __init__.py
            settings.py
            urls.py
            wsgi.py
        coltrane/
        racing/
        tagging/
    

So i'm guessing that your apps are on your pythonpath in windows, and on
linux, they are not

