2012-01-09 3 views
4

Разработка проекта в Django с настройкой IDE как Eclipse с PyDev. Следующий оператор импорта:Импорт Eclipse/PyDev/Django Требуется имя проекта

from polls.models import Poll, Choice 

работает при запуске проекта из командной строки с помощью:

python manage.py runserver 

Однако встроенная проверка ошибок с Eclipse, не удается найти polls.models ("неразрешенный порт импорта «). Я могу исправить это, добавив имя проекта перед классом, а затем запустив его. То есть, сделать оператор импорта:

from projectName.polls.models import Poll, Choice 

Вопрос заключается в том, что я в сотрудничестве по проекту и не может это сделать.

Вопрос: есть ли способ автоматического обнаружения Eclipse или принятия имени проекта из оператора импорта?

+2

Именование проекта - правильная вещь (tm). Имплицитный относительный импорт производится из чистого зла. – delnan

+0

Спасибо, члены команды согласны. Все новое для Django, поэтому мы все еще определяем соглашения. – garromark

+0

Вы также можете создать PYTHONPATH в настройках проекта, чтобы исправить это. –

ответ

3

Использование имени проекта в операторах импорта не является хорошей идеей.

При работе с django/python начните использовать virtualenv. Особенно при работе с eclipse/pydev. Вы можете настроить новый интерпретатор для каждого virtualenv. Просто добавьте virtualenv в список интерпретаторов в разделе «Настройки> PyDev> Interpreter - Python» и обязательно добавьте свой корневой каталог djangoproject в PYTHONPATH на той же странице настроек.

Это, по сути, то, что django делает для вас при запуске из командной строки.

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