use_library
загружает непропатченную версию django в производственную среду, поэтому многие вещи не будут работать "из коробки" на app-engine.
Помощник применяет серию исправлений к библиотекам django, чтобы включить такие вещи, как Сеансы, тестирование, инфраструктура кэширования и т. Д. Если вы не добавляете свою собственную копию django в приложение-помощник и используете последний выпуск (r100) или выше), помощник сначала пытается загрузить django 1.1 и, если это не удается, загружает 1.0. Вы можете увидеть это в appengine_django/__init__.py::LoadDjango
.
В производственном GAE django 1.1 всегда существует, поэтому он загружается первым.
Однако в вашей среде разработки SDK dev-сервера не распространяет Django. Поэтому он использует любую версию Django, которую может найти, сначала пробует 1.1, а затем 1.0, а если не может найти, то выбрасывает UnacceptableVersionError
.
Возможно, вы захотите использовать помощник, а не use_library
, потому что тогда вам нужно будет самостоятельно исправлять необработанные библиотеки django, дублируя таким образом работу помощника. Распространяете ли вы свою собственную версию django в виде папки или zip-файла, решать только вам. Одним из преимуществ отказа от распространения собственной копии django является то, что, поскольку Google применяет исправления безопасности, вы автоматически получаете их без повторного развертывания приложения.