使用模板时Flask错误

时间:2016-03-24 06:11:31

标签: python flask

尝试使用flask启动服务器并获取此错误。我的模板文件位于模板文件夹(flaskr / templates)

import sqlite3
from flask import Flask, request, session, g, redirect, url_for, \
     abort, render_template, flash

app = Flask(__name__)

@app.route('/templates/')
@app.route('/templates/<name>')
def hello(name=None):
    return render_template('index.html', name=name)

if __name__ == '__main__':
    app.run()

我收到错误:

  

未找到

     

在服务器上找不到请求的URL。如果您手动输入了URL,请检查拼写,然后重试。

2 个答案:

答案 0 :(得分:1)

您的申请结构一定有问题

它应该是这样的(目录结构)

测试/

---- hello.py

----模板/

--------的index.html

-------- hello.html的

hello.py

from flask import Flask, render_template
app = Flask(__name__)

@app.route('/')
@app.route('/index')
def index():
    return render_template('index.html')

@app.route('/templates/')
@app.route('/templates/<name>')
def hello(name=None):
    return render_template('home.html', name=name)

if __name__ == '__main__':
    app.run(debug=True)

的index.html

<h1> Index page</h1>

hello.html的

<h1> Home </h1>
<h1> Hello {{name}}</h1>

答案 1 :(得分:0)

您无需为模板提供路线,烧瓶会自动为您处理。

import sqlite3
from flask import Flask, request, session, g, redirect, url_for, \
     abort, render_template, flash

app = Flask(__name__)

@app.route('/')
@app.route('/<name>')
def hello(name=None):
    return render_template('index.html', name=name)

if __name__ == '__main__':
    app.run()