我正在尝试使用flask-sqlalchemy(烧瓶版本0.10,flask-sqlalch版本1.0,python 3.3.3)来反映我的数据库中的表并遇到错误。当我使用代码时:
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+mysqlconnector://**appropriate connection string here **'
db = SQLAlchemy(app)
db.reflect(app = app)
收到以下错误:
file "testmodel.py", line 9, in (module)
db.reflect(app = app)
File "~pathToSqlAlch\flask_sqlalchemy\__init__.py", line 872, in reflect
self.execute_for_all_tables(app, bind, 'reflect')
File "~pathToSqlAlch\flask_sqlalchemy\__init__.py", line 848, in _execute_for_all_tables
op(bind=self.get_engine(app,bind), tables=tables)
reflect() got an unexpected keyword argument 'tables'
任何想法可能导致这个或我可能做错了什么?
答案 0 :(得分:5)
这似乎是has been broken for awhile,甚至是Flask-SQLAlchemy版本1.0。
版本1.0于2013年7月17日与this commit一起发布。该问题仅在几周后关闭(由于2013年7月31日this commit)。
所以,你并不孤单:这是一个错误。修复程序尚未在稳定版本中发布。
答案 1 :(得分:1)
我解决问题的方法是简单地用pip获取当前的主人:
pip install git+git://github.com/mitsuhiko/flask-sqlalchemy.git