Skip to main content
Join the official Python Developers Survey 2018 and win valuable prizes: Start the survey!

Patches for Zope's ZTUtils in order to make 'make_query' and 'make_hidden_input* more flexible and more reliable.

Project description

This package patches Zope’s ZTUtils to enhance its make_query and make_hidden_input functions. Those functions are used to pass values across two requests and allow the target request to get the value in approximately the same way (e.g. in the same type) as it has been in the source request, avoiding tedious fixups in the target request.

The standard Zope versions are quite limited. They support (binary) strings, integers, floats and DateTime.DateTime as elementary data types and lists and namespaces (i.e. something with an items method) of those elemantary types for structured values.

This package replaces Zope’s ZTUtils.Zope.complex_marshal by a variant that correctly handles unicode and tuples. In addition, empty lists (and tuples) are retained. Tuples are marshalled as lists. This patch makes “make_query” and “make_hidden_input” more reliable.

From version 1.1 on, the application can register extensions to support additional elementary data types or to support passing structured values which are more deeply nested. For details, please see the docstrings of class Extension and the functions register_extension and unregister_extension.

By default, the extension framework is used to register an extension handling None values. Note that this changes the behavior for None passing relative to pre 1.1 versions. Use unregister_extension("none") to keep the old behavior.

The extension framework is used to define the function register_json_extension. It uses JSON marshalling to represent subvalues in structured data which are too deeply nested to be handled by basic mashalling. Should you need customization for the JSON marshalling, take the implementation of register_json_extension as a blueprint for your own definition.

Version history


Extension framework to optionnaly support application specific handling of new data types and deeper data structures

None is (by default) passed on as the object None not as the string "None".


Lets make_query and make_hidden_inputs reliably handle unicode, tuples and empty lists.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
dm.zopepatches.ztutils-1.1.tar.gz (5.9 kB) Copy SHA256 hash SHA256 Source None Dec 12, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page