gpt4 book ai didi

python - dajaxice错误 'str'对象没有属性 'has_header'

转载 作者:太空宇宙 更新时间:2023-11-03 18:55:48 25 4
gpt4 key购买 nike

我尝试使用 dajaxice 刷新我的表格,但看到错误。

回溯:

Environment:


Request Method: GET
Request URL: http://127.0.0.1:8000/bank/index1/

Django Version: 1.5.1
Python Version: 2.7.3
Installed Applications:
('django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.admin',
'meli',
'django_tables2',
'dajaxice',
'django_jalali')
Installed Middleware:
('django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware')


Traceback:
File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
187. response = middleware_method(request, response)
File "/usr/lib/python2.7/site-packages/django/contrib/sessions/middleware.py" in process_response
26. patch_vary_headers(response, ('Cookie',))
File "/usr/lib/python2.7/site-packages/django/utils/cache.py" in patch_vary_headers
142. if response.has_header('Vary'):

Exception Type: AttributeError at /bank/index1/
Exception Value: 'str' object has no attribute 'has_header'

这是我的观点:

def index1(request):

data = MelliTable(ModelMelli.objects.filter(check=False))
RequestConfig(request, paginate={'per_page': 20}).configure(table)
table = render_to_string('meli/index.html', {'data': data })
return simplejson.dumps({'table':table})
dajaxice_functions.register(index1)

我的js是:

<script>
function my_callback(data){
if(data!=Dajaxice.EXCEPTION){
document.getElementById('test').innerHTML = data.table;
}
else{
alert('Error');
}
}
</script>

最佳答案

django-dajaxice 通过使用特殊处理程序将 View 函数(此处为代码中的 index1)包装起来来工作;并通过动态匹配的网址而不是 /bank/index1/ 为它们提供服务。
因此,您不必为 index1 定义 urlpattern /bank/index1/,只需通过 Dajaxice interface 访问它即可。 ,也许是这里的Dajaxice.bank.index1(my_callback)

该错误是由于正常的 Django View 预计返回一个 HttpResponse() 实例而引起的,而 index1 在此处返回一个字符串(当您通过dajaxice 接口(interface),上面提到的特殊处理程序会将字符串放入 HttpResponse 中,不会出现问题)

关于python - dajaxice错误 'str'对象没有属性 'has_header',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17295502/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com