【问题标题】:django error: __init__takes at least 2 arguments 1 givendjango 错误:__init__ 接受至少 2 个参数 1 给出
【发布时间】:2016-02-28 17:17:48
【问题描述】:

我收到以下错误:

typeError: __init__() takes at least 2 arguments 1 given`

我有这些课程:

class task(models.Model):
    name=models.CharField('name', max_length=100)
    text=models.TextField('task_text')

    def __unicode__(self):
        return self.name

class person(models.Model):
    name=models.CharField('name', max_length=50)

    def __unicode__(self):
        return self.name

我想使用render_to_response 显示任务如下:

def index(request):
    tass = task.objects.all()
    return render_to_response('index.html',
                              {'tass': task},
                              context_instance=RequestContext(request))

然后我得到typeError: __init__() takes at least 2 arguments 1 given

我该如何解决这个问题?

【问题讨论】:

  • 你能发布整个错误跟踪吗?这会有所帮助
  • 欢迎来到 Stack Overflow!我编辑了您的问题,修复了一些拼写错误(“least”与“last”不同),并将错误放在开头。为了便于阅读,我还进一步缩进了代码。祝你好运!

标签: django arguments typeerror init


【解决方案1】:

我猜问题超出了您提供的代码,因为它应该可以工作。 唯一的错误是你应该改成{'tass': tass},

【讨论】:

    【解决方案2】:

    QueryDict 对象必须是RequestContext 的输入。像这样:

    def index(request):
        tass = task.objects.all()
        return render_to_response('index.html',
                                  context_instance=RequestContext(request, {'tass': task}))
    

    【讨论】:

      猜你喜欢
      • 2012-10-08
      • 2016-05-28
      • 1970-01-01
      • 1970-01-01
      • 2018-01-05
      • 1970-01-01
      • 2020-01-30
      相关资源
      最近更新 更多