A small list/dict DSL for field filter specific designed for RESTful API partial response.
Project description
https://github.com/kudo/collection-filter
This library provides a DSL filter for list or dict data. It is original designed for RESTful API partial response. Tested with Python 2.6, 2.7.
Quick Start
To install, use pip:
$ pip install collection-filter
Then:
$ python >>> from collection_filter import collection_filter # Query a dict >>> collection_filter({'foo': 1, 'bar': 2}, 'foo') {'foo': 1} # Query a dict with multiple elements (seperated by comma) >>> collection_filter({'foo': 1, 'bar': 2}, 'foo,bar') {'foo': 1, 'bar': 2} # Query a dict deeply >>> collection_filter({'foo': {'bar': 2, 'orange': 'sweet'}}, 'foo.bar') {'foo': {'bar': 2}} # Query a list >>> collection_filter([{'foo': 1, 'bar': 2}, {'foo': 3, 'bar': 4}], '[].foo') [{'foo': 1}, {'foo': 3}] # list/dict combination example >>> collection_filter({'foo': 'bar', 'aListOfDict': [{'foo': 1, 'bar': 2}], 'aListOfDict[].foo') {'aListOfDict': [{'foo': 1}]}
Syntax
Currently support operators
Operator | Description |
---|---|
, | Multiple field query sperated by comma |
[] | To indicate the data should be handled as list |
. | Dot notation should follow with a symbol name which to specify a field in current dict data |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
collection-filter-0.3.tar.gz
(3.4 kB
view hashes)