从标题开始,我正在尝试使用Flask将HTML页面加载到HTML框架中。
当我在Firefox选项卡上打开frameset.html页面时(用{.src}}替换为index.html),框架集的行为正确。 但是,每当我运行python代码时,加载的HTML页面都会在帧之间正确划分,但是在任何页面中都没有找到index.html页面的踪迹。
main.py
from flask import Flask, render_template, request
app = Flask(__name__)
page = 'index.html'
@app.route('/')
def home():
return render_template('frameset.html', src=page)
app.run()
frameset.html
<html>
<frameset rows="10%,80%,*">
<frame src=''>
<frameset cols='20%,40%,40%'>
<frame src=''>
<frame src='{{src}}'>
<frame src='' name="output">
</frameset>
<frame src=''>
</frameset>
</html>
index.html
<html>
<head>
<title>HOME</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="http://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet" media="screen">
<style type="text/css">
.container {
max-width: 500px;
padding-top: 100px;
}
</style>
</head>
<body>
<div class="container">
<a href="genostats.html" target="output">GENO stats</a>
</html>
如何解决此问题?我在此处编写的代码仅用于测试框架集的功能。
答案 0 :(得分:0)
在@app.route('index.html')
处创建另一条路线,以渲染index.html
模板,确保index.html
文件位于模板文件夹中
像这样:
@app.route('/index.html')
def index():
return render_template('index.html')
资源需要从烧瓶中的templates folder
或static folder
提供,您不能拥有资源并自动提供它,因为这将是非常不安全的,因为任何用户都将只需更改链接即可访问整个服务器。