Ошибка импорта и PythonPath - PullRequest
0 голосов
/ 07 ноября 2010

Я пытаюсь понять, в чем проблема:

Я пытаюсь импортировать модуль:

from main.models import Main
from django.contrib import admin

admin.site.register(Main)

Однако, когда я пытаюсь попасть на сайт администратора, яполучить страницу с ошибкой django:

ImportError at /admin/
cannot import name Main

I noticed that it provides a dump of the **Python Path:**

Python Path:    ['/Users/brian/src/SampleApp/src/SampleApp', '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python26.zip', '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6', '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-darwin', '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac', '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac/lib-scriptpackages', '/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python', '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk', '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-old', '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-dynload', '/Library/Python/2.6/site-packages', '/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/PyObjC', '/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/wx-2.8-mac-unicode']

Однако я не понимаю, где находится этот путь Python?

выполнение export PYTHONPATH ничего не возвращает, так как оно не установлено впеременные окружения.

Мне нужно импортировать модуль, который находится в /Users/brian/src/SampleApp/src/SampleApp/main/models.py

Спасибо

Ответы [ 2 ]

4 голосов
/ 07 ноября 2010

PYTHONPATH можно получить с помощью:

import sys
print sys.path

Немного отладки, чтобы попытаться использовать:

from main import models
from django.contrib import admin

admin.site.register(models.Main)

и посмотреть, если это даст вам больше информации.

1 голос
/ 07 ноября 2010

У вас есть __init__.py в /Users/brian/src/SampleApp/src/SampleApp/main/? Это необходимо для каталога main, который следует учитывать при поиске. Пустой __init__.py будет делать.

Вы также можете убедиться, что там определено Main. Работает ли обычный import main.models?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...