创建更多页面

在自定义base.html的基础上继续工作。

主页templates/index.html

{% extends 'base.html' %}
{% block page_content %}
<h1>hello world!</h1>
{% endblock %}

其他页面templates/user.html

{% extends 'base.html' %}
{% block page_content %}
<h1>hello {{ name }}</h1>
{% endblock %}

错误页面templates/404.html

{% extends 'base.html'%}
{% block page_content %}
<h1>页面不见了</h1>
{% endblock %}

错误页面templates/5500.html

{% extends 'base.html' %}
{% block page_content %}
<h1> 内部错误</h1>
{% endblock %}

在hello.py中定义相应的视图函数,此时hello.py变成如下模样

from flask import Flask, render_template
from flask.ext.bootstrap import Bootstrap
from flask.ext.script import Manager

app = Flask(__name__)
bootstrap = Bootstrap(app)
manager = Manager(app)

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

@app.errorhandler(404):
def page_not_found(e):
    return render_template('404.html'), 404
@app.errorhandler(500):
def internal_server_error(e):
    return render_template('500.html'), 500
    
if __name__ == '__main__':
    app.debug = True
    manager.run()
注意
  • 由于加载manager,所以启动方式改为Python hello.py runserver 后面可以接多个参数。
  • errorhandler是flask专门处理错误信息的装饰器
  • 这里的页面过于简陋,可以自己根据官方文档进行美化
上一篇:C# 数据操作系列 - 3. ADO.NET 离线查询


下一篇:Linux 上搭建 Snort+BASE 入侵检测系统