繁体   English   中英

如何访问Peewee ForeignKeyField的一列

[英]How do I Access One Column of a Peewee ForeignKeyField

我试图通过我的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.foreignkeycolumnmodel.Table.foreignkeyfield.foreignkeycolumn外键,如下所示:

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

(用户是ForeignKeyField,用户名是用户表中的一列)

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

像模型

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

    class Meta:
        database = db

非常感谢-汤姆

您不需要使用id列,peewee应该能够在查询中找到它:

(Like
 .select()
 .where(
     (Like.user==current_user) &
     (Like.post == post_id)).exists():

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM