2017-07-04 89 views
1

我想在我的django项目中打开并阅读这个html文件,但是我得到这个 [Errno 2]没有这样的文件或目录:'test.html'。模板文件路径

html = 'test.html' 
open_html = open(html, 'r') 
soup = BeautifulSoup(open_html, "html5lib") 
open_html.close() 

但是模板路径似乎做工精细渲染

template = 'test.html' 
context = { 
} 
return render(request, template, context) 

TEMPLATES = [ 
     'DIRS': [os.path.join(BASE_DIR, "templates")], 
] 

我知道我的模板想进入我的应用程序文件夹时,但是我喜欢,让他们在一个文件夹中进行开发时和调试。

+0

'的html =“的test.html” open_html =打开(html,'r')'这段代码并不完整。 html只有文件名test.html,但BeautifulSoup需要完整路径。而不是'html ='test.html''这提供了文件的实际路径。 – ammy

回答

3

因为你正试图从模板访问文件,所以您需要添加完整路径

尝试以下解决方案

from your_project_name.settings import BASE_DIR 
path = os.path.join(BASE_DIR+'templates/', 'test.html') 
open_html = open(path, 'r') 
soup = BeautifulSoup(open_html, "html5lib") 
open_html.close() 

希望这是帮助你