1

私はこのエラーを取得しています ''初期 'はこの関数のキーワード引数が無効です "、私はcreateviewでオブジェクトを作成しようとしていますなぜ私はそれを手に入れているのですか?'initial'はこの関数の無効なキーワード引数です

urls.py

from django.conf.urls import url 
from . import views 

urlpatterns = [ 
url(r'^add/$', views.CriarTrabalhador.as_view(), name='add')] 

models.py

from django.db import models 

    # Create your models here. 

    class Trabalhadores(models.Model): 
     Nome = models.CharField('Name',max_length=100) 
     Cpf = models.CharField(primary_key=True,max_length=11) 
     Data = models.DateField('Data de Nascimento') 

     def __str__(self): 
      return self.Nome 

forms.py

from django import forms 
    from .models import Trabalhadores 

    class TrabalhadoresForm(forms.ModelForm): 
     class Meta: 
      model = Trabalhadores 
       fields = ["Nome","Cpf","Data"] 

views.py

from django.shortcuts import render 
from django.views.generic.list import ListView 
from django.core.urlresolvers import reverse 
from .models import Trabalhadores 
from django.views.generic.detail import DetailView 
from django.views.generic.edit import UpdateView,CreateView 
from . import forms 

class CriarTrabalhador(CreateView): 
    model = Trabalhadores 
    form_class = forms.Trabalhadores 
    template_name = 'mytemp/adicionartrabalhador.html' 

    def get_success_url(self): 
     return reverse('trabalhadores') 

編集

フォームをsubmitingした後、私はこのURL

localhost /を追加/?csrfmiddlewaretoken = PVjqYnZNwJZpHuObu1OXNSnIekeqMVVeNIIxTkr2UFH7ii83QScfGdBrX5HjmZCe &を取得していますNome = test & Cpf = 00000000000 &データ= 1998-12-14

なぜですか?

+0

トレースバックどこですか? –

+0

私の投稿を編集しました – Goun2

答えて

4

このビューのform_classは、TrabalhadoresFormではなく、モデルであるTrabalhadoresに設定されています。これはフォームです。あなたがDjangoのジェネリックのすべてのタイプのための同じモデルクラス を通過されたクラスやデータからあなたを使用してビューを作成しているので、

+0

はい、それは問題でしたが、今はフォームを送信するときに奇妙なURLがあります、ありがとう、私は自分の投稿を編集しました。 – Goun2

+0

テンプレートのフォーム要素に 'method = 'POST'を設定してはいけません。 –

+0

ありがとう、私はフォームを投稿した。 – Goun2

0

あなたのform_classは配置する必要がありますが、フォームform_class = TrabalhadoresForm同様

に等しいですクラスビュー

関連する問題