A flask-style `route` decorator for django views
Project description
Json serialization with datetime, date, Decimal and bson.ObjectId support
>>> from datetime import datetime, date, timedelta, timezone >>> from decimal import Decimal >>> from bson import ObjectId >>> import asjson>>> data = { ... 'time': [ ... date(2018, 3, 6), ... datetime(2018, 3, 6, 9, 38, 0, 1), ... datetime(2018, 3, 6, 9, 38, 0, 1).replace( ... tzinfo=timezone.utc), ... ], ... 'decimal': Decimal('3.14'), ... 'objectid': ObjectId('a' * 24), ... }
We can make all the values json-appropriate without dumping the structure to string. It can be helpful in some cases, e.g. with passing it into database json field.
>>> asjson.encode(data) {'time': ['2018-03-06', '2018-03-06T09:38:00.000001', '2018-03-06T09:38:00.000001+00:00'], 'decimal': '3.14', 'objectid': 'aaaaaaaaaaaaaaaaaaaaaaaa'}
For dumping to string we can use asjson.dumps which takes the same parameters as standard json.dumps does plus debug which just a shortcut for json.dumps(…, indent=4, sort_keys=True, ensure_askii=False):
>>> print(asjson.dumps(data, debug=True)) { "decimal": "3.14", "objectid": "aaaaaaaaaaaaaaaaaaaaaaaa", "time": [ "2018-03-06", "2018-03-06T09:38:00.000001", "2018-03-06T09:38:00.000001+00:00" ] }
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for django-route-decorator-0.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | a0e2e10f3e9697886e0890b2dd90daecb5274761e6cd63ef0d1e548a71eb550e |
|
MD5 | 6e4e61fcf3d984a8dc749e9a9038c8b1 |
|
BLAKE2b-256 | 9d2c4e178a905b8717b12b25d079ba58e9fead7f27879563a52f42c5b185a026 |