From its docstring I quote: "It's a powerful feature but it can be hard to understand what's going on" You can say that again. I'm trying to use this widget in a Quixote Form and running into a road block. My scenario: I have an event details page that contains a few widgets. id (string) language (option_select) title (string) description (text) I'm hoping to use an OptionSelectWidget to change a form to reload and reassign title, description to language specific values (being returned from a zodb). The behaviour I am experiencing is that when an option is selected from the option_select widget, the form reloads (if I have a submit button added elsewhere) and displays the original values assigned to the string and text widgets. If I have no submit button defined, the form's action method is called. Somewhere I read this is correct. What I need to be able to do is re-fill the text/string widget values with the language appropriate data and let the user make edits and/or deletions. I seem to be going around in circles with this and would appreciate being steered straight again. I suppose I could just use the widgets by themselves but have grown fond of the packaging of everything in quixote.form.