<class 'tw2.core.params.AdminBody_s_s'>

10 views
Skip to first unread message

Tim Black

unread,
Feb 20, 2015, 11:31:28 PM2/20/15
to toscawidge...@googlegroups.com
I upgraded my application from TurboGears 2.1 to 2.3.4, and from
ToscaWidgets 1 to 2.  I was able to login to my app.  But one custom
widget I've created like this:

class AdminBody(TextField):
...

served through a controller like this:

            tmpl_context.body = admin_body(
                finish_work=False,
                totalToBill = format_precision(totalToBill,2),
                projectsToBillGrid = projectsToBillGrid,
                add_work_form = add_work_form,
                add_work_form_child_args = dict(
                   start=dict(default=datetime.now())
                   ),
                time_allocation_grid = time_allocation_grid,
                period_grids = period_grids
            )

when called in a template like this:

${tmpl_context.body}

outputs this:

<class 'tw2.core.params.AdminBody_s_s'>

If instead I call it in a template like this:

${tmpl_context.body.display()}

it outputs:

IOError: [Errno 2] No such file or directory: '\n<div
xmlns="http://www.w3.org/1999/xhtml"\n   
xmlns:py="http://genshi.edgewall.org/"\n    class="${css_class}"\n   
id="${id}"\n    >\n ...

which is the unrendered content of the template = '...' string of my
custom widget.

How can I get the widget to render properly?

Tim
Reply all
Reply to author
Forward
0 new messages