簡體   English   中英

在 SQLAlchemy 中的一對多關系的 model 中設置一個屬性

[英]Set an attribute inside the model of a one-to-many relationship in SQLAlchemy

我正在嘗試在父 model(文章)中設置關系屬性並返回 RelevantFlag 的最新 object。 Articles 和 RelevantFlag 模型是一對多的關系,因此我的模型如下所示:

class Article(db.Model):
    id = db.Column(db.Integer, primary_key=True)

    relevant_flag = db.relationship(
        'RelevantFlag',
        backref="Article",
        lazy='dynamic'
        )

    # Get the latest RelevantFlag model object
    def getLatestRelevance(self):
        return Article.query.join(
            RelevantFlag
            ).filter(
                RelevantFlag.id == self.id
            ).order_by(
                Article.id.desc()
            ).first()

    def setRelevance(self, state):
        # Set the boolean to what's passed in 'state'

    def __repr__(self):
        return '<Article {}>'.format(self.id)

class RelevantFlag(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    article_id = db.Column(db.Integer, db.ForeignKey('article.id'))
    state = db.Column(db.Boolean)

我的問題是,我如何編寫一個設置器來更改文章 model 內的 RelevantFlag 的 state 屬性?

如果我理解正確,您想通過訪問一對多關系來更改列值?

def setRelevance(self, state):
    # Set the boolean to what's passed in 'state'
    self.relevant_flag.state = state

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM