djangoでTypeError: __init__() takes 2 positional arguments but 4 were givenが出た件

djangoでプロジェクト立ち上げて、とりあえずpython manage.py runserverしてindex.html出そうとした時のこと。

以下のエラーが発生↓

TypeError: __init__() takes 2 positional arguments but 4 were given

直訳すると

TypeError:__init __()は2つの位置引数を取りますが、4つが指定されました

って感じのこといわれてますね。

エラーが出ている個所を見てみるとこんな感じ。

class IndexView(ListView):
  template_name = 'app/index.html'

んん?どこがだめなんだ?と思いましたが、よく見てみるとTemplateView使う予定のとこをListViewにしてました。

(ListViewにmodelとか指定してないしそもそもproject立ち上げたばかりの状態だったのでデータベースに何も入れてない)

class IndexView(TemplateView):
  template_name = 'app/index.html'

TempiateViewに直したら無事エラー消えました!

※他同じようなエラーの記事

teratail[テラテイル]

はじめまして。 Python3.6でtwitterのユーザーストリームを取得するコードを書いていますが、 納得のいか…

Stack Overflow

These are the codes for my classes: class Employee: def …