TypeError此构造函数不带参数

时间:2017-05-07 18:12:03

标签: django

我似乎在使用Django的程序中遇到了TypeError问题。

Views.py

from __future__ import unicode_literals
from django.shortcuts import render
from .models import Anteproyecto
from .forms import formulario_anteproyecto
from django.views.generic import CreateView
from django.core.urlresolvers import reverse, reverse_lazy
from django.contrib.messages.views import SuccessMessageMixin

class CrearAnteproyecto(SuccessMessageMixin, CreateView):
    model = Anteproyecto
    form_class = formulario_anteproyecto
    template_name = "crear_anteproyectos.html"
    success_url = reverse_lazy('crear_anteproyecto')
    success_message = "El anteproyecto ha sido creado"

    def form_valid(self, form):
        self.object = form.save()

形式。 py

from django import forms
from .models import Anteproyecto

class formulario_anteproyecto:
    class Meta:
        model = Anteproyecto
        fields = ['titulo', 'resumen','estado','palabras_claves']

Models.py

from __future__ import unicode_literals
from django.db import models
from taggit.managers import TaggableManager
from Actividades.models import Actividades

ESTADOS = (('Activo', 'Activo'), ('Inactivo', 'Inactivo'))

class Anteproyecto(models.Model):
    titulo = models.CharField(max_length=100, verbose_name='Título')
    estado = models.CharField(max_length=8, verbose_name="Estado", choices=ESTADOS, default='Activo')
    resumen = models.CharField(max_length=500, verbose_name="Resumen")
    claves = TaggableManager(verbose_name = "Palabras claves")
    actividad = models.ForeignKey(Actividades, on_delete=models.CASCADE)

    class Meta :
        verbose_name = 'Anteproyecto'
        verbose_name_plural = 'Anteproyectos'

    def __str__(self):
        return self.titulo

导入应用程序" Actividades"在模型中用作参考。使用Django-taggit来使用可以作为标记使用的字段,由于TypeError仍未实现。 Html是一个bootstrap模板,它将表单打印为段落。在不同的视图中有其他创建使用相同的编码,但是这一个给了我错误。

1 个答案:

答案 0 :(得分:1)

您的formulario_anteproyecto不会继承任何内容。它需要继承forms.ModelForm