Flask template中使用iframe

Flaks template中使用iframe嵌套新的网页(new_page.html)的网页到历史网页(old_page.html)中(减少新网页的入口)

1,增加iframe tag

在old_page.html中适当位置增加iframe入口标签:

复制代码
<iframe src="{{url_for('upgrade.get_new_page')}}" style="width:100%;height:100%;min-height: 500px;outline: 1px; border: 0 solid #dddddd"></iframe>

注意:在flask template中 iframe默认是进行跳转的,非静态资源的加载,直接写文件路径一般是找不到的。需要经过flask路径的跳转。

为了避免出现意想不到的路径访问(项目是老而大的项目,路径跳转目前还未弄清楚),自己写了个view来渲染要插入的页面

2,通过view跳转来渲染目标页面

upgrade 蓝图中定义get_new_page,view代码逻辑如下

new_page.html是在templates/my_page/下

复制代码
def get_new_page():

        return render_template("my_page/new_page.html")

最初是想通过在iframe的src中写入目标页面路径地址"my_page/new_page.html"来进行页面加载,发现会请求http://localhost:8443/mm/upgrade/my_page/new_page.html的地址内容来填充iframe,因为这个地址内容404,导致填充的内容是404结果页面。所以猜测,iframe在flask的template中应该是通过路由跳转机制来找页面的。不能简单通过加路径地址来加载目标页面。要跟目标页面的路径跳转结合使用。

相关推荐
Jagger_3 小时前
整洁架构三连问:是什么,怎么做,为什么要用
前端
一个处女座的程序猿O(∩_∩)O3 小时前
React 完全入门指南:从基础概念到组件协作
前端·react.js·前端框架
前端摸鱼匠3 小时前
Vue 3 的defineEmits编译器宏:详解<script setup>中defineEmits的使用
前端·javascript·vue.js·前端框架·ecmascript
里欧跑得慢4 小时前
Flutter 测试全攻略:从单元测试到集成测试的完整实践
前端·css·flutter·web
Jagger_4 小时前
前端整洁架构详解
前端
徐小夕4 小时前
我花一天时间Vibe Coding的开源AI工具,一键检测你的电脑能跑哪些AI大模型
前端·javascript·github
英俊潇洒美少年4 小时前
Vue3 企业级封装:useEventListener + 终极版 BaseEcharts 组件
前端·javascript·vue.js
嵌入式×边缘AI:打怪升级日志4 小时前
使用JsonRPC实现前后台
前端·后端
小码哥_常5 小时前
深度剖析:为什么Android选择了Binder
前端
方安乐6 小时前
单元测试之helper函数
前端·javascript·单元测试