Provides dango views with input transformed into a tree structure.
Project description
## Bug Reports and Development
Please report any problems to the `Martin Owens <mailto:doctormo@gmail.com>`_.
## Description
This module provides a decorator for your django views which will take the flat
django request response and convert the POST and FILES into a tree structure.
This tree can optionally be sent to be varified using an xsd like data-validator
if installed.
## Data Example
For example, your html web page might provide a way for javascript to generate
many input widgets and for these to be numbered and collated, once complete the
html form submits this data:
fruit_0_name="banana"
fruit_0_colour="yellow"
fruit_1_name="apple"
fruit_1_colour="red"
bread_name="tigle"
bread_type="hairy"
Into this:
{
'fruit': [
{ 'name': "banana", 'colour': "yellow" },
{ 'name': "apple", 'color': "red" },
],
'bread': { 'name': "tigle", 'type': "hairy" },
}
## Use Example
import request_tree
@request_tree.generate
def example_view(request):
print request.TREE
## Validation Examples
import request_tree
@request_tree.validate(schema=MY_INPUT_SCHEMA)
def example_view(request):
print request.VALUS
## Work in Progress
This code is still a work in progress, please submit your ideas and patches directly to me via email.
Please report any problems to the `Martin Owens <mailto:doctormo@gmail.com>`_.
## Description
This module provides a decorator for your django views which will take the flat
django request response and convert the POST and FILES into a tree structure.
This tree can optionally be sent to be varified using an xsd like data-validator
if installed.
## Data Example
For example, your html web page might provide a way for javascript to generate
many input widgets and for these to be numbered and collated, once complete the
html form submits this data:
fruit_0_name="banana"
fruit_0_colour="yellow"
fruit_1_name="apple"
fruit_1_colour="red"
bread_name="tigle"
bread_type="hairy"
Into this:
{
'fruit': [
{ 'name': "banana", 'colour': "yellow" },
{ 'name': "apple", 'color': "red" },
],
'bread': { 'name': "tigle", 'type': "hairy" },
}
## Use Example
import request_tree
@request_tree.generate
def example_view(request):
print request.TREE
## Validation Examples
import request_tree
@request_tree.validate(schema=MY_INPUT_SCHEMA)
def example_view(request):
print request.VALUS
## Work in Progress
This code is still a work in progress, please submit your ideas and patches directly to me via email.
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
File details
Details for the file django-request-tree-0.8.1.tar.gz
.
File metadata
- Download URL: django-request-tree-0.8.1.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcbe3304c396efcd0e8f5dcad3b74690bda1e6c915cfb9e5de8a0948c46ef76d |
|
MD5 | 8440d6ca667f5e38e60ebf670ef5ac1d |
|
BLAKE2b-256 | b6fd9b63dc3899a5bdab02da6ebb771b20f074be62e92d0a45accf55e67de522 |