我正在使用基于django类的视图
class MyView(TemplateView):
def return_JSON(self, object_id):
parent = models.UserForm.objects.get(pk=object_id)
url(r'^return/(?P<object_id>\d+)/json/', views.MyView().return_JSON, name="return_json")
我收到此错误
return_JSON() got multiple values for keyword argument 'object_id'
答案 0 :(得分:3)
你在这里做的很奇怪。
您正在使用CBV,但将函数作为视图函数传递。请记住,CBV的正常签名是传入MyCBV.as_view()
。没有CBV机器在没有通过as_view()
或dispatch()
运行它的情况下运行。
但是如果你坚持,你只需要为你的函数添加一个新参数......
def return_JSON(self, request, object_id):
# ^^^^^^^ this
return http.HttpResponse("Foo!")