2010-11-06 3 views
0

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

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

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

Благодаря

ответ

1

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

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

+0

Да, у меня есть пустой __init__.py там ... глупо меня, Майн нет. вот и все. Благодарю. –

+0

любая идея, где установлен PYTHONPATH? –

4

PYTHONPATH могут быть доступны через:

import sys 
print sys.path 

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

from main import models 
from django.contrib import admin 

admin.site.register(models.Main) 

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

+0

Спасибо за это. Я получаю это сейчас. –

Смежные вопросы