Как использовать общие представления в Django? - PullRequest
0 голосов
/ 16 ноября 2010

Я пытаюсь использовать общие представления Django для создания страницы регистрации пользователя. У меня есть следующий код в моем приложении urls.py

from django.conf.urls.defaults import *
from models import Ticket

urlpatterns = patterns('',
    (r'^new/$', 'django.views.generic.create_update.create_object', { 'model': User } ),
)

Теперь, когда я перехожу на этот URL, я получаю следующее:

TemplateDoesNotExist at /new/
auth/user_form.html

Я пытался создать шаблон, соответствующий ему, но я продолжаю получать это сообщение. Любой совет?

Кроме того, я предполагал, что это сделает шаблон для меня. Что я на самом деле помещаю в файл шаблона, когда создаю его?

РЕДАКТИРОВАТЬ: Исходя из рельсов я смешивал шаблоны и представления. Я все еще застрял, но я думаю, что мне нужно сделать функцию, на мой взгляд. Что-то вроде:

def user_form:
    #stuff

Ответы [ 2 ]

1 голос
/ 16 ноября 2010

Вам нужно будет создать файл шаблона в формате <app_label>/<model_name>_form.html.Поместите этот шаблон в каталог шаблонов, как определено в TEMPLATE_DIRS в вашем файле настроек.

В самом файле шаблона вам нужно будет использовать контекст, определенный стандартным ModelForm.

{{ form.name.label_tag }} {{ form.name }}
1 голос
/ 16 ноября 2010

Я не думаю, что вам нужно создавать функцию просмотра. вам нужно предоставить шаблон (auth / user_form.html в этом случае также настраивается) в каталоге шаблонов. Шаблон должен содержать необходимые поля для создания нового пользовательского объекта.

см. документы для этого.

и проверьте это подобное обсуждение

...