0

我正在尝试通过我的 Like 表使用各种查询将 ForeignKeyField 的 id 列访问到我的 UserAccount 表,例如: if models.Like.select().where(models.Like.user.id==current_user.id,models.Like.post.id==post_id).exists():

我一直在尝试访问用户和帖子上的列 ID。我之前在 Jinja 模板中通过遍历每一行并通过model.Table.foreignkeyfield.foreignkeycolumn如下方式访问外键来实现这一点:

{% for post in posts %}
    {{post.user.username}}
{% endfor %}

(user是一个ForeignKeyField,username是User表中的一列)

我的问题是:有没有办法让我在不遍历整个表的情况下访问外键列???

“喜欢”模型

class Like(Model):
    post = ForeignKeyField(rel_model=Post, related_name='Like')
    user = ForeignKeyField(rel_model=UserAccount, related_name='Like')

    class Meta:
        database = db

非常感谢 - 汤姆

4

1 回答 1

1

您不需要使用该id列,peewee 应该能够在查询中弄清楚:

(Like
 .select()
 .where(
     (Like.user==current_user) &
     (Like.post == post_id)).exists():
于 2015-12-18T16:30:16.723 回答