'This method gets called by the routing engine. The first argument is
`request` which contains a `HttpRequest` instance.
The request is stored in `self.request` for later use. The storage
instance is stored in `self.storage`.
After processing the request using the `dispatch` method, the
response gets updated by the storage engine (for example add cookies).'

def dispatch(self, request, *args, **kwargs):

    self.prefix = self.get_prefix(*args, **kwargs)
    self.storage = get_storage(self.storage_name, self.prefix, request, getattr(self, 'file_storage', None))
    self.steps = StepsHelper(self)
    response = super(WizardView, self).dispatch(request, *args, **kwargs)
    self.storage.update_response(response)
    return response
