SQL() replacement char conflicting with Postgresql JSON operator
Peewee's JSON fields contain methods that wrap the Postgres operators:

http://docs.peewee-orm.com/en/latest/peewee/playhouse.html#BinaryJSONField
 Have you tried this?

```
MyModel.jsonb_field.contains('the key')
```
 I'd suggest that you could also use reduce to generate a list of clauses OR--ed or AND-ed together:

```
import operator
reduce(operator.and_, [MyModel.jsonb_field.contains(key) for key in keys])
```
 Also:

http://docs.peewee-orm.com/en/latest/peewee/querying.html#adding-user-defined-operators
 Awesome I haven't had a chance to go back through this code again but I think one of these will do the trick. Will reopen if I have any issues, thanks for your help!

I've been trying to query for the existence of a string in a `JSONField` which contains a list of strings. I've resorted to trying to use raw `SQL()` because from what I can glean from reading the code / [this blog post](http://charlesleifer.com/blog/postgresql-hstore-json-data-type-and-arrays-with-peewee-orm/) this sort of operator isn't baked in just yet.

Problem is that the operator I need from postgres is `?` :/ https://www.postgresql.org/docs/current/static/functions-json.html#FUNCTIONS-JSONB-OP-TABLE

Obviously getting a conflict with the standard operator vs the param replacement token. My only suggestion might be to add in the ability to escape it using `\` potentially, that'd maintain backwards compatibility and be a nice solution.

Many thanks,
Alex
