title: Using different templates with django form wizard
body: <p>I was looking at the documentation and I am not quite sure how to use different templates for each step...</p>
  
  <p>I looked into the source code and it seems that the template name is hardcoded:</p>
  
  <pre><code>class WizardView(TemplateView):
      """
      The WizardView is used to create multi-page forms and handles all the
      storage and validation stuff. The wizard is based on Django's generic
      class based views.
      """
      storage_name = None
      form_list = None
      initial_dict = None
      instance_dict = None
      condition_dict = None
      template_name = 'formtools/wizard/wizard_form.html'
  
  ...........
  </code></pre>
  
  <p>The docs say something about mixins, but I am not sure how to use them since I just started with django...</p>
  
  <p>Thanks</p>
  
  <hr>
  
  <p>UPDATE:</p>
  
  <p>I looked further into the source code and realized that there is a method <code>get_template_names</code>.</p>
  
  <p>I tried:</p>
  
  <pre><code>class AddWizard(SessionWizardView):
          def get_template_names(self, step):
                  if step == 0:
                          return 'business/add1.html'
                  return 'business/add2.html'
          def done(self, form_list, **kwargs):
                  return render_to_response('business/done.html', {
                          'form_data': [form.cleaned_data for form in form_list],
                  })
  </code></pre>
  
  <p>But got an error:</p>
  
  <p><code>get_template_names() takes exactly 2 arguments (1 given)</code></p>