В движке приложения python есть такая ошибка: при открытии переключателя интерактивная консоль - PullRequest
0 голосов
/ 25 декабря 2011

Пока я работаю на localhost:8080, когда я открываю интерактивную консоль и выполняю некоторые операции, такие как получение списка Kind и т. Д. (Адрес: http://localhost:8080/_ah/admin/interactive), тогда выдается эта ошибка:

<class 'google.appengine.dist._library.UnacceptableVersionError'>: django 1.2 was requested, but 0.96.4.None is already in use

Эта ошибка повторялась несколько раз, в подобных случаях. Он застрял до перезапуска localhost на dev_appserver.py

Это ошибка или я не так делаю?

Пример того, что я сделал на интерактивной консоли:

from myapp.models import *
for room in Room.all():
    room.update_time = room.create_time
    room.put()

Примечание:
Это мой django_bootstrap:

import os
import sys
import logging
import __builtin__
from google.appengine.ext.webapp import util

import pickle
sys.modules['cPicle'] =pickle

logging.getLogger().setLevel(logging.INFO)

sys.path.insert(0, os.path.abspath((os.path.dirname(__file__))))

import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'

from google.appengine.dist import use_library
use_library('django', '1.2')


import django.core.handlers.wsgi

def main():
    application = django.core.handlers.wsgi.WSGIHandler()
    util.run_wsgi_app(application)    

if __name__ == '__main__':    
    main()

Ответы [ 2 ]

1 голос
/ 28 декабря 2011

Это вызвано тем, что вы загружаете URL-адреса. При переходе на страницу администратора сначала загружается 0,96, что, в свою очередь, приводит к ошибке, когда обработчик пытается загрузить 1,2.

Если вы добавите код use_library в appengine_config.py, это будет загружать 1.2 для каждого URL.

Шаги описаны здесь: Изменение версии по умолчанию в движке приложения Django

0 голосов
/ 28 декабря 2011

my index.ymal в корневой папке говорит:

# AUTOGENERATED

# This index.yaml is automatically updated whenever the dev_appserver
# detects that a new type of query is run.  If you want to manage the
# index.yaml file manually, remove the above marker line (the line
# saying "# AUTOGENERATED").  If you want to manage some indexes
# manually, move them above the marker line.  The index.yaml file is
# automatically uploaded to the admin console when you next deploy
# your application using appcfg.py.

Таким образом, каждый раз, когда я открываю http://localhost:8080/_ah/admin/datastore, этот файл обновляется: он все еще имеет тот же контент, но отметка времени файла в операционной системе говорит об этом

Я думаю, что здесь, поскольку http://localhost:8080 видит, что models.py не то же самое, тогда он может загрузить его, то не может запустить django_bootstrap.

Однако, если я впервые открою http://localhost:8080/_ah/admin/datastore, а затем http://localhost:8080, это работает.Вот почему иногда Иногда я получаю ошибку: это не зависит от URL-адреса заказа, соответствующего

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