我正在处理从模型创建的基本事件表单,但我不断收到以下错误消息:
TypeError at /addlaundry/
addlaundry() takes exactly 1 argument (0 given)
我认为这是因为我没有把论点传递到观点上,但我找不到任何地方的文件来证明如何正确地做这件事,至少没有以我理解的方式来写。
这是我的url.py:
urlpatterns = patterns('',
url('^addlaundry/$', 'beacon.laundry.views.addlaundry'),
}
以及观点本身:
# Create your views here.
from schedule.views import EventForm
def addlaundry(request):
if request.method == 'POST':
form = EventForm(request.POST)
if form.is_valid():
return HttpResponseRedirect('/thanks/') #redirect after succesfully adding new delivery
else:
form = addlaundry()
return render_to_response('newlaundry.html', {
'form': form,
})
我的观点是否确实结构错误,或者我遗漏了什么?如果有文件我需要阅读,我想我只是没有找到它,但觉得我错过了一些基本的东西。
谢谢
迈克尔
您的视图称为
addlaundry
,它调用(可能)另一个称为addlaundry
的东西。重命名其中一个,或者在其名称空间内使用另一个addlaundry
。这是你的问题:
这是试图调用视图本身!那不是你想要的。您需要定义一个表单类并在这里调用(实例化)。
问题在于:
您正在调用视图函数
addlaundry
,它接受一个必需的参数(request
),但您没有向它传递任何参数。当然,无论如何,这不是构造表单的正确方法。您将需要查看Django forms documentation中给出的示例,了解如何在Django中创建和使用表单。
相关问题 更多 >
编程相关推荐