2015-10-16 56 views
0

我的任务是显示html页面中的文件夹数据。但它的显示空白页请任何人帮我在哪里我做错了。文件数据不显示在html页面

view.py

def info(request,id): 
    INFO_DIR = '/home/des-0064/Logs' 
    req_path = os.path.join(INFO_DIR, id) 
    file_content = dict() 
    for root, dirs, files in os.walk(req_path): 
     for file_name in files: 
      full_path = os.path.join(root,file_name) 
      with open(full_path, 'r') as _file: 
       #file_content[file_name] = _file.read() 
       file_content[file_name] = _file.read() 
    print file_content 

    for file_name, content in file_content.iteritems(): 
     print file_name 
     print content 

    return HttpResponse (request, 'info.html') 

回答

0

你的代码只是打印到控制台,您需要通过上下文变量传递给你的模板。

至少你可以在创建json之后通过内容。

return HttpResponse(request, 
        'info.html', 
        {'file_contents': json.dumps(file_content.iteritems())}) 

然后,您可以使用file_contents在你的模板

我假设你可以看到印在控制台上的内容和代码的所有作品

+0

难以置信的类型:'dict'(它给出的错误) – annonymus

+0

@annonymus - 更新,你需要先对它进行jsonify – Sayse

0

你需要传递file_content到html模板。

return HttpResponse(request, 'info.html', file_contents) 

像上面那样传递它将允许您迭代所有文件并显示它们的内容。你的模板代码会是这样的。

{% for file, content in file_contents %} 
    Name: {{ file }} 
    Content: {{ content }} 
{% endfor %}