Как включить автозаполнение для объектов ответа / запроса WebOb в Pydev для Eclipse? - PullRequest
3 голосов
/ 17 октября 2008

Я использовал Pydev / Eclipse для разработки приложений Google App Engine (GAE), но мне не удалось получить объекты ответа / запроса от WebOb для автоматического завершения. Я использовал широко рекомендуемый учебник , чтобы настроить все; автозаполнение работает для всего остального, с чем я столкнулся.

В качестве примера: если я наберу "я". Я получаю автозаполнение для ответа и запроса; если я выберу один из них, скажите «ответ» и добавьте «.» (доводя до сих пор полную строку до «self.response.») Я не получаю никаких опций - поскольку библиотека WebOb включена, я бы ожидал получить такие вещи, как «out.write ()» в качестве опции.

Я включаю в свой проект Pydev следующие библиотеки:

  • C: \ Program Files \ Google \ google_appengine
  • C: \ Program Files \ Google \ google_appengine \ lib \ django
  • C: \ Program Files \ Google \ google_appengine \ lib \ webob
  • C: \ Program Files \ Google \ google_appengine \ lib \ yaml \ lib

Любая помощь будет высоко ценится, спасибо.

Ответы [ 2 ]

2 голосов
/ 07 декабря 2008

Я попытался установить, и это работает. Однако имейте в виду, что анализ PyDev останавливается всякий раз, когда он обнаруживает ошибку, и это может быть причиной, по которой автозаполнение не работает в вашем случае.

Я бы предложил вам связаться с главным разработчиком, Фабио Задрозным; он очень дружелюбный и услужливый, а также ведет блог со множеством полезных советов по настройке PyDev с различными фреймворками и всеми ограничениями.

0 голосов
/ 23 февраля 2010

Очевидно, что это известная проблема с различными Python IDE - и ни у кого, похоже, нет единственного решения. Google изменил некоторые внутренние пути так, что они могут быть определены только путем выполнения сценариев Python. Я не смог найти удовлетворительного решения для Pydev, хотя для Wing IDE есть достойный обходной путь:

Улучшение автозаполнения и перехода к определению

Wing не может разобрать хакерские действия sys.path в более поздних версиях Google App Engine, поэтому он может не найти некоторые модули для автозаполнения, определения определений и других функций. Чтобы обойти это, установите точку останова в fix_sys_path в dev_appserver.py и начните отладку.

Затем в инструменте Debug Probe (только в Wing Pro) введите следующее:

os.pathsep.join(EXTRA_PATHS)

Скопируйте это в буфер обмена и откройте свойства файла для dev_appserver.py, щелкнув правой кнопкой мыши по файлу. Затем на вкладке «Среда» выберите «Пользовательский» для пути Python, нажмите кнопку «Просмотреть как текст» и вставьте дополнительный путь.

Вам нужно будет повторить это, если вы переместите установку движка приложения, или вы можете использовать $ {WING: PROJECT_DIR}, чтобы преобразовать эти пути в базу в соответствии с расположением файла проекта.

(взято из: http://www.wingware.com/doc/howtos/google-app-engine)

...