genshi.filters.html.HTMLFormFiller

Package genshi :: Package filters :: Module html :: Class HTMLFormFiller |

# Class HTMLFormFiller

    object --+
             |
            HTMLFormFiller

A stream filter that can populate HTML forms from a dictionary of values.

    >>> from genshi.input import HTML
    >>> html = HTML('''<form>
    ...   <p><input type="text" name="foo" /></p>
    ... </form>''', encoding='utf-8')
    >>> filler = HTMLFormFiller(data={'foo': 'bar'})
    >>> print(html | filler)
    <form>
      <p><input type="text" name="foo" value="bar"/></p>
    </form>

Instance Methods
__init__(self, name=None, id=None, data=None, passwords=False) Create the filter. |
__call__(self, stream) Apply the filter to the given stream. |
Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__repr__`, `__setattr__`, `__sizeof__`, `__str__`, `__subclasshook__`

Properties
Inherited from `object`: `__class__`

Method Details

### __init__(self, name=None, id=None, data=None, passwords=False) (Constructor) |
Create the filter. Parameters: `name` - The name of the form that should be populated. If this parameter is given, only forms where the `name` attribute value matches the parameter are processed. `id` - The ID of the form that should be populated. If this parameter is given, only forms where the `id` attribute value matches the parameter are processed. `data` - The dictionary of form values, where the keys are the names of the form fields, and the values are the values to fill in. `passwords` - Whether password input fields should be populated. This is off by default for security reasons (for example, a password may end up in the browser cache) Overrides: object.__init__ Note: Changed in 0.5.2: added the `passwords` option

### __call__(self, stream) (Call operator) |
Apply the filter to the given stream. Parameters: `stream` - the markup event stream to filter