我的应用程序结构如下:
--app
--app.py
--static
--js
--app.js
--css
--partial
--home.html
--templates
--index.html
已经通过了this,但它是不同的
我的 app.py
@app.route("/")
def index():
return send_file('static/partial/home.html')
#tried with below as well
#return make_response(open('static/partial/index.html').read())
我的 app.js
use strict';
var guts = angular.module('app', ['ngSanitize', 'ngCookies']);
我的 index.html
<!DOCTYPE html>
<html xmlns:ng="http://angularjs.org" id="ng-app" ng-app="app" ng-controller="appcontroller">
<head>
</head>
在本地服务器上托管应用程序时出现的错误是:
IOError: [Errno 2] No such file or directory: 'C:\\..\\..\\..\\..\\..\\app\\templates/index.html' , i tried changing this backslash with other options , not luck
P.S 我不想使用jinja模板 我也引用this博客作为参考。 有什么线索吗?
[更新]:最终目标是渲染home.html,其中有@ static / partial
答案 0 :(得分:1)
那应该是return render_template('index.html')
。无论它是否具有jinja模板代码,Flask都无法找到它,除非您指定它是模板文件(或直接使用send_from_directory
)。
如果您真的想在链接的博客文章中使用send_file
,请使视图函数返回send_file(os.path.join('templates', 'index.html'))
,这将为您处理所有斜杠废话。