I'm building a GAE Flask application with Flask-Alchemy, against Cloud SQL, and running dev_appserver
to test the application as I build it.
However, if I set the SQLALCHEMY_DATABASE_URI
to a mysql+gaerdbms:///appname?instance=instanceid
URL, I get the following traceback when trying to call db.create_all()
:
Traceback (most recent call last):
# earlier lines omitted for brevity
File "/Project/app/foo.bar/foo/bar/admin/__init__.py", line 26, in init_db
db.create_all()
File "/Project/app/distlib/flask_sqlalchemy/__init__.py", line 856, in create_all
self._execute_for_all_tables(app, bind, 'create_all')
File "/Project/app/distlib/flask_sqlalchemy/__init__.py", line 848, in _execute_for_all_tables
op(bind=self.get_engine(app, bind), tables=tables)
File "/Project/app/distlib/flask_sqlalchemy/__init__.py", line 797, in get_engine
return connector.get_engine()
File "/Project/app/distlib/flask_sqlalchemy/__init__.py", line 473, in get_engine
self._engine = rv = sqlalchemy.create_engine(info, **options)
File "/Project/app/distlib/sqlalchemy/engine/__init__.py", line 332, in create_engine
return strategy.create(*args, **kwargs)
File "/Project/app/distlib/sqlalchemy/engine/strategies.py", line 69, in create
dialect = dialect_cls(**dialect_args)
File "/Project/app/distlib/sqlalchemy/dialects/mysql/base.py", line 1986, in __init__
default.DefaultDialect.__init__(self, **kwargs)
File "/Project/app/distlib/sqlalchemy/engine/default.py", line 124, in __init__
self.paramstyle = self.dbapi.paramstyle
AttributeError: 'module' object has no attribute 'paramstyle'
What gives? Why is the (DB-API 2.0 required) paramstyle
attribute missing?