Django Listview FormMixin

2024-06-07 12:45:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我是django的新手抱歉,如果这是一个愚蠢的问题,我试图在django中使用FormMixin,但收到以下错误:

  return form_class(**self.get_form_kwargs())
TypeError: 'NoneType' object is not callable

Forms.py

class SubscriberForm(forms.Form):
    email = forms.EmailField(label='',
                             max_length=100,
                             widget=forms.EmailInput(attrs={'class': 'form-control', 'type':'email'}), validators=[validateEmail])

视图.py

from django.shortcuts import render
from django.views.decorators.csrf import csrf_exempt
from .models import Subscriber
from .forms import SubscriberForm
import random
from django.views.generic.edit import FormMixin
from django.urls import reverse

    class NewsletterList(FormMixin, generic.ListView):
        queryset = newsletter.objects.filter(status=1).order_by('-created_on')
        template_name = 'index.html'
        from_class = SubscriberForm
    
    
        def post(self, request, *args, **kwargs):
            form = SubscriberForm(request.POST)
            if form.is_valid():
                sub = Subscriber(email=request.POST['email'], conf_num=random_digits())
                sub.save()
                return render(request, "index.html", {'form': SubscriberForm()}) 
            else:
                return render(request, "index.html", {'form': SubscriberForm()}) 

有人能帮我吗。提前谢谢


Tags: djangofromimportselfformindexreturnemail

热门问题