代码之家  ›  专栏  ›  技术社区  ›  I159

webapp2的数据库迁移工具

  •  -1
  • I159  · 技术社区  · 12 年前

    我是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服务器时,我出现了一个错误:

    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 回复  |  直到 12 年前
        1
  •  0
  •   Sebastian Kreft    12 年前

    因此,现在我假设您正在使用Google Cloud Sql,并且在开发服务器中测试应用程序时遇到了问题。

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