Django ModelForm没有出现在模板中

时间:2013-06-26 09:40:17

标签: django forms modelform

我一直在使用django几天,我正在尝试创建一个小应用程序来学习所有内容。 我已经阅读了关于ModelForms的内容,我想在我的应用程序中使用它,但是我无法在我的模板中进行渲染,我找不到问题,所以我希望你们可以帮助我。 这是我的代码:

models.py

from django.db import models

class Kiss(models.Model):
    latitude    = models.FloatField()
    longitude   = models.FloatField()
    person1     = models.CharField(max_length = 255)
    person2     = models.CharField(max_length = 255)
    cdate       = models.DateTimeField(auto_now_add=True)

    def __unicode__(self):
        return self.person1

views.py

from django.views.generic.list import ListView
from project.models import Kiss
from project.forms import KissForm
from django.http import HttpResponseRedirect

class KissListView(ListView):
    template_name = 'project/home.html'
    model = Kiss
    form = KissForm

urls.py(仅限相关部分)

urlpatterns += patterns('',
         url(r'^$', KissListView.as_view(), name='home'),
     )

forms.py

from django import forms
from project.models import Kiss

class KissForm(forms.ModelForm):
    class Meta:
         model = Kiss

和模板

<form action="" method="POST">
            {% csrf_token %}
            {{form.as_p}}
            <button>Send</button>
        </form>

提前感谢您的帮助。 Ĵ

1 个答案:

答案 0 :(得分:1)

class KissListView(ListView):
...

您使用的ListView不需要form,也不会在模板上下文中为您提供form

您可能希望改用CreateView