python - "_wrapped_view() takes at least 1 argument"错误是什么意思?

标签 python django django-templates django-views

我正在将 Django 表单数据渲染到模板,但每次访问该 url 时都会显示此错误:

_wrapped_view() takes at least 1 argument (0 given)

views.py 中的方法:

 @login_required                              
 def subnet_network_detail(request):
     if request.method == 'POST':
         form = NetworkCreateForm(request.POST)
         if form.is_valid():
             subnet = form.data['Subnet_Address']
             ip = form.data['IP_Address']
             user_hosts = get_hosts(user=request.user)
             hosts_list = host_subnet(user_hosts,subnet,ip)
             import pdb;pdb.set_trace()
     extra_context = {
         'hosts_list': hosts_list
         }
     return direct_to_template(request, 'networks/subnet_network.html',extra_context)

和 urls.py:

  url(r'^network/netmask/select/$',
     'subnet_network_detail', name='subnet_network_detail')

我阅读了有关此错误的其他问题,但没有任何想法。怎么解决?

最佳答案

direct_to_template 设计用于您的urls.py:

url(r'^network/netmask/select/$', 'direct_to_template', {'template':'networks/subnet_network.html'}, name='subnet_network_detail')

您应该使用renderrender_to_response从 View 内。

如果您使用 django 1.3 或更高版本,您可以使用:

from django.shortcuts import render
...
return render('networks/subnet_network.html', extra_context)

或者如果您使用的是早期版本:

from django.shortcuts import render_to_response
from django.template import RequestContext
...
return render_to_response('networks/subnet_network.html', extra_context, RequestContext(request))

关于python - "_wrapped_view() takes at least 1 argument"错误是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10840013/

相关文章:

python - Python 中的 Numpy 类型提示 (PEP 484)

python - Django:禁止(CSRF token 丢失或不正确。)

python - 如何限制某些用户访问 UpdateView?

python - 为什么 Django 不渲染我的 block 内容或识别登录用户?

python - 在 numpy 中向量化索引操作

python - 如何将numpy数组更改为灰度opencv图像

django - 仅列出 OneToOneField Django 中的可用值

python - 如何在 django 中的日期时间中分离 HH 和 MM

django - 如何检测 Django 模板中表单元素的类型?

python - 在 Python 中使用相同比较运算符的倍数压缩 if 语句