Plain is headed towards 1.0! Subscribe for development updates →

Plain

Plain is a web framework for building products with Python.

With the core plain package you can build an app that:

With the official Plain ecosystem packages you can:

Learn more at plainframework.com.

 1from pprint import pformat
 2
 3from markupsafe import Markup, escape
 4
 5from plain.http import Response
 6from plain.views.exceptions import ResponseException
 7
 8
 9def dd(*objs):
10    """
11    Dump and die.
12
13    Dump the object and raise a ResponseException with the dump as the response content.
14    """
15    dump_strs = [
16        Markup("<pre><code>") + escape(pformat(obj)) + Markup("</code></pre>")
17        for obj in objs
18    ]
19    combined_dump_str = Markup("\n\n").join(dump_strs)
20
21    print(f"Dumping objects:\n{combined_dump_str}")
22
23    response = Response()
24    response.status_code = 500
25    response.content = combined_dump_str
26    response.content_type = "text/html"
27    raise ResponseException(response)