我试图用文本文件创建一个数组我的django / python代码是
f = open('text file path here', 'r')
names = []
for line in f:
names.append(line)
f.close()
return render_to_response('frontend.html', {'names'}, context_instance=RequestContext(request))
然后我的frontend.html获取数组,名称,并使用数据进行自动填充,其格式为id =' status':
<script>
var names = {{ names }};
$(document).ready(function(){
$("#status").autocomplete(names);
});
</script>
当我开始输入某人的名字时,frontend.html上的字段中没有任何内容发生。有什么想法吗?
答案 0 :(得分:0)
您可以在url.py
内构建网址端点,在视图中,您可以使用JSON中的names
返回响应,并使用getJSON调用在模板中获取它们。
查看强>
from django.utils import simplejson
def names(request):
..build your name collection
data = simplejson.dumps(names)
return HttpResponse(data, mimetype='application/javascript')
<强>模板强>
$.getJSON('/your_json_endpoint/names/', function(data) {
// data contains your names serialized
});
您需要在URLConf https://docs.djangoproject.com/en/1.3/topics/http/urls/
中设置端点请点击此处查看完整示例:http://mitchfournier.com/2011/06/06/getting-started-with-ajax-in-django-a-simple-jquery-approach/
答案 1 :(得分:0)
这一行错了:
return render_to_response('frontend.html', {'names'}, context_instance=RequestContext(request))
- 你在哪里看到它传递了“名字”的值?你想要:
return render_to_response('frontend.html', {'names': names}, context_instance=RequestContext(request))
实际上,你的代码甚至不是有效的python语法,所以我怀疑你的copypasting错误......