Инструмент переноса базы данных для webapp2
Я новичок в webapp2 и GAE. Мне интересно, я должен объявлять все таблицы базы данных обязательно для моих моделей? Я не против написания SQL вручную. Но я не хочу изобретать велосипед. Существует ли какой-либо инструмент переноса БД для Webapp2?
РЕДАКТИРОВАТЬ
У меня есть модели:
import logging
from google.appengine.ext import db
from google.appengine.api import rdbms
_INSTANCE_NAME = 'webosteam1:webosteamdb'
_DataBase = 'webosdb'
class Usr(db.Model):
usrID = db.IntegerProperty()
usrName = db.StringProperty()
usr = db.UserProperty()
loginType = db.IntegerProperty()
usrType = db.IntegerProperty()
geoLoc = db.ReferenceProperty(GeoLoc) #GeoLoc reference
dateCreated = db.DateTimeProperty(auto_now_add=True)
# ТАК ДАЛЕЕ..
Когда я запускаю dev-server локально, у меня появляется ошибка:
Connecting to MySQL with kwargs {'passwd': '', 'db': 'webosdb', 'unix_socket': '/var/run/mysqld/mysqld.sock', 'host': 'localhost', 'user': '', 'port': 3306}
CRITICAL 2012-07-16 20:47:08,203 rdbms_mysqldb.py:107] MySQL connection failed! Ensure that you have provided correct values for the --mysql_* flags when running dev_appserver.py
После того, как я передаю правильные ключи для моей локальной базы данных MySQL, у меня появляется ошибка, что база данных пуста. Вот я и думаю о том, как все это работает?
1 ответ
Итак, теперь я предполагаю, что вы используете Google Cloud Sql, и у вас возникают проблемы при тестировании вашего приложения на сервере разработки.
Следуйте приведенному здесь примеру https://developers.google.com/academy/apis/cloud/appengine/cloud-sql/application_with_local_mysql чтобы узнать, как работать с локальной базой данных в среде разработки.