Я пытаюсь создать приложение с Django на GAE и CloudSQL в качестве db.
Я использовал это google developers link и this link для настройки dev-среды. Я не могу подключиться к локальному mysql db.Django в Google App Engine с облачным SQL в среде dev
Вот настройка DATABASE, которую я пытаюсь использовать.
if (os.getenv('SERVER_SOFTWARE', '').startswith('Google App Engine') or
os.getenv('SETTINGS_MODE') == 'prod'):
DATABASES = {
'default': {
'ENGINE': 'google.appengine.ext.django.backends.rdbms',
'INSTANCE': 'instance:appid',
'NAME': 'database_name',
}
}
else:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'USER': 'root',
'PASSWORD': '',
'HOST': 'localhost',
'NAME': 'database_name',
}
}
Мое приложение отлично работает на производственной GAE, но когда я пытаюсь запустить приложение на Dev окр, я получаю эту ошибку
File "/home/sandeep/Downloads/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 635, in __init__
raise IOError(errno.EACCES, 'file not accessible', filename)
IOError: [Errno 13] file not accessible: '/usr/local/lib/python2.7/site-packages/MySQL_python-1.2.4-py2.7-linux-x86_64.egg'
полный стек-след в http://pastebin.com/ZXHv0FPQ
Я установил «python-mysql», загрузив источник и выполнив «python setup.py install»
Редактировать 1
Я также попытался добавить MySQLdb в библиотеку.
- name: MySQLdb
version: "latest"
Получил эту ошибку
the library "MySQLdb" is not supported
in "/home/sandeep/development/UploadImage/src/app.yaml", line 14, column 1
EDIT 2
Джанго SyncDB работает отлично с этим настройками и Джанго умеет создавать таблицы для me.But, когда я пытаюсь запустить через «dev_appserver.py», тогда я получил вышеописанную стек.
Я могу получить доступ к облачной среде SQLSQL.
Вы установили библиотеку Python MySQL? вам также нужно включить его в файл app.yaml, см. https://developers.google.com/appengine/docs/python/cloud-sql/ –
Да, я установил python-mysql, используя источник. Мне нужно добавить его в PYTHONPATH? – Sandeep
Если я изменю движок на «google.appengine.ext.django.backends.rdbms», тогда он сможет получить доступ к экземпляру liveSQLSQL. Я не могу настроить django с локальным mysql. – Sandeep