2

私はフラスコ管理者のチュートリアルを進めています。

チュートリアルで説明されているように、 User モデルの ModelView のインスタンスを作成するときに、

admin.add_view(ModelView(User, db.session))

次のエラーが表示されます: AttributeError: 'ColumnProperty' object has no attribute 'expression'

そして、次を使用して Account モデルの ModelView のインスタンスを作成する場合:

admin.add_view(ModelView(Account, db.session))

次のエラーが表示されます: 例外: モデル アカウントに主キーがありません。

私のユーザーモデルコードは次のとおりです。

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(80))
    email = db.Column(db.String(160))
    password = db.Column(db.String(100))
    account_id = db.Column(db.Integer, db.ForeignKey('account.id'))
    account = db.relationship('Account', backref=db.backref('user', lazy='dynamic'))

アカウント モデル コードは次のとおりです。

class Account(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    password = db.Column(db.String(100))

ユーザー ModelView 作成時のスタック トレース: http://pastebin.com/gf200CHp

アカウント ModelView 作成時のスタック トレース: http://pastebin.com/NYhGBW1Z

モデルの作成にflask-sqlalchemyを使用しています。誰かがこれらのエラーを解決する方法を提案できますか?

4

1 に答える 1

3

同じModel ... does not have primary key例外が発生しましたが、SQLAlchemy を 0.7.10 から 0.8.2 にアップグレードすると消えました。

sudo pip install SQLAlchemy==0.8.2

-乾杯!

于 2013-11-06T15:48:31.037 に答える