Django syncdb не может найти мои приложения

Я новичок в Джанго, и у меня были проблемы.

В корне моего проекта я создал папку под названием "local_apps" и в нее я поместил приложение "myapp". Я обновил INSTALLED_APPS в файле settings.py с помощью: myproject.local_apps.myapp

Однако, когда я пытаюсь синхронизировать, Django выдает ошибку: "не существует модуля с именем local_apps.myapp"

Когда я помещаю "myapp" обратно в корень проекта, он снова работает, но я не хочу этого. Я хочу сохранить свои приложения в папке local_apps.

Можете ли вы сказать мне, что я делаю не так здесь.

Заранее спасибо.

3 ответа

Решение

Я думаю, что это общая ошибка Python, а не ошибка Django.

Может быть, вам нужно создать __init__.py файл в каталоге local_apps, поэтому python знает, что это модуль.

У вас есть models.py в папке myapp? Я думаю, что Django, возможно, нужно увидеть этот файл в приложении.

[Edit: на самом деле, я думаю, что мудрый выше может быть правильным, убедитесь, что у вас есть __init__.py, если вы это сделаете, попробуйте models.py.]

Я столкнулся с ошибкой: ImportError: No module named foo

Чтобы решить эту проблему, я просто добавил пакет сайта Django в путь Python по адресу settings.py Модуль, как это:

PKG_DIR = os.path.dirname(__file__)
sys.path.append(PKG_DIR)
Другие вопросы по тегам