Skip to main content

API and directive converting object to ``dict``.

Project description

https://travis-ci.org/rebeccaframework/rebecca.todict.png?branch=master

rebecca.todict

rebecca.todict is API and directive converting object to dict.

INSTALL

Install using pip or easy_install.:

$ pip install rebecca.todict
$ easy_install rebecca.todict

USAGE

rebecca.todict privides includeme hook that will set up set_todict directive.:

config.include('rebecca.todict')

using with paste deploy:

pyramid.includes = rebecca.todict

register todict adapter

by directive

To register todict adapter, you can use set_todict directive.:

config.set_todict(Person, person_to_dict)

That register todict adapter converging Person object to dict.

You can register named adapter too:

config.set_todict(Person, person_to_dict_short, name="short")

by todict_decorator

todict_decorator register todict Adapter casually.:

@todict_config(Person)
def person_to_dict(request, person):
    return dict(....)

using todict API

Registered adapters are used by todict API:

from rebecca.todict import todict

d = todict(request, person)
d = todict(request, person, name="short")

JSON Renderer using todict API

rebecca.todict.renderers.json_renderer_factory is factory of renderer using todict API.

to use this renderer, register renderer factory:

config.add_renderer('.json', 'rebecca.todict.renderers.json_renderer_factory')

specify “.json” renderer on view_config or add_view:

@view_config(renderer="short.json")
def person_list(request):
    return dict(people=[Person(), Person()])

the renderer use todict Adapters named “short”.

Contributors

  • Atsushi Odagiri, Original Author

  • Yusuke Muraoka

Changelog

0.5 (2013-09-22)

  • fix content type using json renderer #1

0.4 (2013-08-31)

  • fix conflict multi todict registration for the same name and different type

0.3 (2013-08-31)

  • fix conflict multi todict registration

0.2 (2013-03-02)

  • add json renderer using todict API

  • todict_config decorator

0.1 (2013-02-16)

first commit

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

rebecca.todict-0.5.zip (8.4 kB view details)

Uploaded Source

Built Distribution

rebecca.todict-0.5-py2.py3-none-any.whl (5.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file rebecca.todict-0.5.zip.

File metadata

  • Download URL: rebecca.todict-0.5.zip
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for rebecca.todict-0.5.zip
Algorithm Hash digest
SHA256 b64323a41ba1fbed59ad95435fd93fb88053fa4d7617f8240083893158cb2b96
MD5 232e77d1713baee6a3a210e91f5b3e84
BLAKE2b-256 bc068350aa76c3c31bff4f82b3443ad9060d19dbd20ece1caeefcd3f26a938c5

See more details on using hashes here.

File details

Details for the file rebecca.todict-0.5-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for rebecca.todict-0.5-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 4ee74ee35ecd132966e9a36641250af42cba94a6db65cc25cc2b2c84be2d50cb
MD5 36d09cae43f2deebe1a3cec81d4639b3
BLAKE2b-256 a117700f5f77226bac4b7568a37c677275394a22d361ffda4266dc96cf8aff16

See more details on using hashes here.

Supported by

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