Flask-sqlalchemy backref无效

时间:2015-02-04 14:18:40

标签: python flask sqlalchemy

我正在尝试使用flask和sqlalchemy来实现一个应用程序。

这是我的models.py

from blog import db
from blog import bcrypt


class Base(db.Model):

    __abstract__ = True
    id = db.Column(db.Integer, primary_key=True)


class User(Base):
    __tablename__ = "user"
    email = db.Column(db.String(128), unique=True)
    password = db.Column(db.String(256))
    nickname = db.Column(db.String(128))
    posts = db.relationship('Post', backref="author", lazy="dynamic")
    is_admin = db.Column(db.Boolean, default=False)
    is_active = db.Column(db.Boolean, default=False)

    def set_password(self, password):
        self.password = bcrypt.generate_password_hash(password=password)


    def check_password_hash(self, password):
        result = bcrypt.check_password_hash(self.password, password)
        if result:
            return True
        else:
            return False


class Post(Base):
    __tablename__ = "post"
    title = db.Column(db.String(64))
    body = db.Column(db.Text)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))

我创建了User对象,并且还创建了post,它们是相关的。 并且backref不起作用。

我的意思是在模板中。

{{ post.author.nickname }}

结果为无。 我不知道为什么这不起作用。 user_id列,ForeignKey正在运行。

0 个答案:

没有答案