Добавить дополнительную форму с django-регистрацией - PullRequest
0 голосов
/ 28 июня 2011

У меня есть регистрационная форма, которая отображается следующим urlconf -

url(r'^$',
    register,
    {'backend': 'registration.backends.default.UserBackend',
     'template_name': 'index.html'},
    name='auth_index'),

В шаблоне у меня есть следующее -

<form method="post" action=".">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Register" />
</form>

Как добавить дополнительныеформы и контекст для этого шаблона?Я хочу, чтобы у меня было что-то вроде следующего:

<form method="post" action=".">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Register" />
</form>
...
<form action='{% url waiting_list %}' method='post'>{% csrf_token %}
<p>Enter your email: <input type="text" name="email" value=""></p>
<input type="submit" name="email_submit" value="Submit Email">
</form> 
{{message}}

Как я мог это сделать?(Желательно все в пределах видимости).Спасибо.

1 Ответ

1 голос
/ 28 июня 2011

Ваш шаблон в порядке.Теперь вы добавляете URL-адрес waiting_list в ваш uelconf и реализуете его вид:

url(r'^waiting_list/$', 'myapp.views.waiting_list', {}, name='waiting_list'),

и:

   # myapp/views.py
   def waiting_list(request):
       ...

Поскольку это не критическая форма данных, я бы, вероятно, использовал @csrf_exempt обойти проверку csrf, чтобы упростить задачу.В случае ошибки перенаправьте на страницу с ошибкой.

(Кстати, с точки зрения удобства использования, лучшей реализацией этой проблемы может быть публикация электронного письма с использованием javascript.)

...