如何将多个条件传递给 python peewee 的 join's on 参数?

How to pass multiple conditions to python peewee's join's on argument?

我想知道如何在 peewee 中执行以下 SQL 查询。

SELECT
    farmers.fruit_count,
    vendors.fruit_count,
FROM
    farmers
INNER JOIN
    vendors
ON
    farmers.location = vendors.location
AND
    farmers.alliance = vendors.alliance
AND
    farmers.fruit_count > 0

ON-AND-AND-... 在 peewee 中是否可行?关于 on 参数的文档不多。我必须求助于 where() 吗?我假设查询看起来像下面这样,假设 on 参数采用与 where() 相同的形式:

Farmers.select(Farmers.fruit_count,
               Vendors.fruit_count)
       .join(Vendors,
             join_type=JOIN.INNER,
             on=(Farmers.location == Vendors.location,
                 Farmers.alliance == Vendors.alliance,
                 Farmers.fruit_count > 0)

只需使用&加入条件:

on=((Farmers.location == Vendors.location) &
    (Farmers.alliance == Vendors.alliance) &
    (Farmers.fruit_count > 0))