How to do query with `WHERE value IN list` in the Python Peewee ORM?

kramer65 picture kramer65 · Aug 7, 2014 · Viewed 8.1k times · Source

I'm using the (awesome) Python Peewee ORM for my Flask project, but I now got stuck trying to do a query with a where value in ['a', 'b', 'c']. I tried doing it as follows:

MyModel.select().where(MyModel.sell_currency in ['BTC', 'LTC'])

But unfortunately it returns all records in the DB. Any ideas how I could do this?

Answer

ambi picture ambi · Aug 7, 2014

The docs has the answer: x << y will perform x IN y, where y is a list or query. So the final query will look like:

MyModel.select().where(MyModel.sell_currency << ['BTC', 'LTC'])