Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Django ImportError

I created my own Django application with directory structure

/appname
    __init__.py
    models.py
    /submodule1
        __init__.py
        a.py

Inside a.py I have the following import

from ..models import Something

This works okay if I have /appname inside my /djangoproject folder, but when I install the app to Python's site-packages (via setup.py which I created), all hell breaks loose and a.py can no longer import Something, with the following error:

ImportError: cannot import name Something

Here is the setup.py:

from distutils.core import setup

setup(name='appname',
      version='0.1',
      packages=['appname', 'appname.contrib'],
)
like image 601
Andrew Lee Avatar asked Aug 18 '11 05:08

Andrew Lee


1 Answers

Put empty file named: __init__.py inside /submodule1 so Python can parse it as module. It should help. The same in /appname - there should be also __init__.py file

like image 189
robos85 Avatar answered Sep 22 '22 12:09

robos85