## 1.8.3 Creating Custom Forms

Rather than creating a `web.form.Form` object and adding fields, it is also possible to define a custom form object. This has the advantage that you can easily override the default behaviour of the `web.form.Form` object so that your form will display information in a different way. More information on customising `web.form.Form` objects is given later on. The code below creates exactly the same form object as we created in the example above.

    >>> class ExampleForm(web.form.Form):
    ...     def setup(self):
    ...         self.addField(
    ...             field.Input(
    ...                 name='box',
    ...                 default='Default Text',
    ...                 description='Input Box:',
    ...                 size=14, maxlength=25
    ...             )
    ...         )
    ...         self.addAction('Submit')
    ...
    >>> exampleForm = ExampleForm(name='form', action='forms.py', method='get')