Skip to main content

Restler provides flexible and configurable JSON and XML object serialization for the web

Project description

Restler is an object Serialization library for the web. It supports translating objects to JSON or XML. Currently, it is targeted at Google App Engine with python 2.7.

Installation

Install Restler from PyPi using easy_install or pip; or download the package and run:

python setup.py install

(Running setup.py requires setuptools.)

For use on Google App Engine, you will need to install the code in the restler directory somewhere in your path.

Running Tests

To run restler’s tests:

pip install -r requirements.txt -t lib
python -m unittest discover

Running tests requires python 2.7 the Google App Engine SDK or Google Cloud SDK

Usage

A db.Model or ndb.Model instance can be serialized with the default settings using to_json or to_xml.

>>> jean = Person(first_name="Jeanne", last_name="d'Arc", ssn="N/A")
>>> to_json(jean)
'{"first_name": "Jeanne", "last_name": "d\'Arc", "ssn": "N/A"}'

To include only certain fields, use a ModelStrategy. When using a ModelStrategy, you will need to use a restler model decorator.

>>> @ae_db_serializer
>>> class User(db.Model)
>>>    ...

Now setup the ModelStrategy

>>> person_strategy = ModelStrategy(Person).include("first_name", "last_name")
>>> to_json(jean, person_strategy)
'{"first_name": "Jeanne", "last_name": "d'Arc"}'

Or, to exclude specified fields:

>>> person_strategy = ModelStrategy(Person, include_all_fields=True).exclude("ssn")
>>> to_json(jean, person_strategy)
'{"first_name": "Jeanne", "last_name": "d'Arc"}'

For more details on customizing serialization, see the documentation.

TODO

https://bitbucket.org/curtis/restler/issues?status=new&status=open

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

restler-serialization-0.4.1.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

restler_serialization-0.4.1-py2.7.egg (30.9 kB view details)

Uploaded Egg

File details

Details for the file restler-serialization-0.4.1.tar.gz.

File metadata

File hashes

Hashes for restler-serialization-0.4.1.tar.gz
Algorithm Hash digest
SHA256 1027198dd3f25596d058995e807cb2fc34182664b9b81ecfee545493f1ee93ce
MD5 4ce100f8a2659b6b8027559f14d51abb
BLAKE2b-256 8daf1886484d3bd1fc76b6a5e758322207b5a224e798db74b2976e25a8e7d6e2

See more details on using hashes here.

File details

Details for the file restler_serialization-0.4.1-py2.7.egg.

File metadata

File hashes

Hashes for restler_serialization-0.4.1-py2.7.egg
Algorithm Hash digest
SHA256 2e12ec30850988fedbcdf62735b249c15048c6274fc06e59ab7c7855f903017b
MD5 c217396773e945078b03c897e4a15c78
BLAKE2b-256 4bf5dfd0361a61907633934916e4e1f62ae2524f225bc49e1f5c33ee53674bc2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page