0

次のようなさまざまなクエリを使用して、Like テーブルを介して、ForeignKeyField の id 列に UserAccount テーブルにアクセスしようとしています。 if models.Like.select().where(models.Like.user.id==current_user.id,models.Like.post.id==post_id).exists():

User と Post の列 ID にアクセスしようとしています。各行をループし、model.Table.foreignkeyfield.foreignkeycolumn以下のように外部キーにアクセスすることにより、Jinja テンプレートでこれを達成しました。

{% 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 に答える