Как работает тег {{form}} в приложении Django-регистрация - PullRequest
2 голосов
/ 30 июня 2011

Я скачал и установил приложение регистрации django. Я также скачал шаблон, который имеет этот странный кусок кода

{{form}}

, который волшебным образом создает 4 метки и 4 текстовых поля, чтобы пользователь мог ввести свою регистрационную информацию. Как это работает?

{% extends "registration/registration_base.html" %}
{% block title %}Register for an account{% endblock %}
{% block content %}

<table>
    <form method='post' action=''>{% csrf_token %}
        {{ form }}
        <tr><td></td><td><input type="submit" value="Send activation email" /></td>
    </form>
</table>
{% endblock %}

Ответы [ 2 ]

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

Это часть форм Джанго. Для получения дополнительной информации см. Документацию.

https://docs.djangoproject.com/en/1.3/topics/forms/

Если вы действительно заинтересованы, проверьте исходный код.

https://code.djangoproject.com/browser/django/trunk/django/forms

0 голосов
/ 30 июня 2011

Форма django (но и другие объекты тоже) имеет метод unicode, который вызывается, когда запрашивается строковое представление объекта. Как видно из кода, он просто передает вызов на as_table - который, в свою очередь, использует универсальную вспомогательную функцию: _html_output. Это в основном перебирает все поля и создает HTML, который затем возвращается и отображается на странице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...