2017-08-04 26 views
1

SQLAlchemyからPeeweeに切り替えることを検討していますが、この例を見つけることができないため、基本的な質問があります。私は、一致したオブジェクトのリストを返すクエリを実行したい。どのような作品は、単一のレコードを返す取得することです:Peeweeでクエリ結果のリストを取得

Topping.select().where(Topping.id==jalapenos.id).get() 

私が取得したいどのようなすべての例は、私が反復する必要があることを示しているため、結果のリストです。結果のリストを取得する方法はありますか:

Topping.select(Topping).where(Topping.stock > 0) 

答えて

1

peeweeクエリが遅延実行されています。私はそれがイテレータを返すので、クエリが実際に実行される前にデータを使用しようとしていることを伝える必要があると思います。これは、クエリの反復処理またはexecuteメソッドの直接呼び出しによって発生します。

results = Topping.select().execute() 

リストにクエリ結果を変換するには:あなたが大幅に単一のエンティティを取得するためのクエリを簡素化することができます

query = Topping.select().where(Topping.stock > 0) 
toppings = list(query) 
# OR 
toppings = [t for t in query] 

注意をすぐに実行するクエリを強制的に

with:

Topping.get(Topping.id==jalapenos.id) 
関連する問題