webapp2的数据库迁移工具

时间:2012-07-16 20:14:01

标签: google-app-engine google-cloud-datastore webapp2 sqlmigrations

我是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)   

#E.T.C ......

当我在本地启动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 个答案:

答案 0 :(得分:0)

现在我假设您使用的是Google Cloud Sql,而您在开发服务器中测试应用时遇到了麻烦。

请按照此处提供的示例https://developers.google.com/academy/apis/cloud/appengine/cloud-sql/application_with_local_mysql查找如何在开发环境中使用本地数据库。