Web页面未完全渲染:content部分未渲染,与navbar渲染效果相同(关键词:flask/bug)

36 篇文章 2 订阅
29 篇文章 0 订阅

先上效果图:
这里写图片描述

很显然,content部分没有正确渲染,应该是被用来渲染navbar的函数(CSS?)渲染了。

注意,这里应该是是首页index.html。

同时,还注意到,404 Not Found页面也有几乎相同的问题。如图:
这里写图片描述

而它们都继承自base.html页面,因此判断,应该是base.html出了问题。

这里分别附上index.html、404.html、base.html的代码。

index.html

{% extends "base.html" %}
{% import "bootstrap/wtf.html" as wtf %}

{% block title %}Flasky{% endblock %}

{% block page_content %}
<div class="page-header">
    <h1>Hello {% if name %}{{ name }}{% else %}Stranger{% endif %}!</h1>
</div>
{{ wtf.quick_form(form)}}
{% endblock %}

404.html

{% extends "base.html" %}

{% block title %}Flasky - Page Not Found{% endblock %}

{% block page_content %}
<div class="page-header">
    <h1>Not Found</h1>
</div>
{% endblock %}

base.html

{% extends "bootstrap/base.html" %}

{% block title %}Flasky{% endblock %}

{% block head %}
{{ super() }}
<link rel="shortcut icon" href="{{ url_for('static', filename='favicon.ico') }}" type="image/x-icon">
<link rel="icon" href="{{ url_for('static', filename='favicon.ico') }}" type="image/x-icon">
{% endblock %}

{% block navbar %}
<div class="navbar navbar-inverse" role="navigation">
    <div class="container">
        <div class="navbar-header"> 
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                <span class="sr=only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="/">Flasky</a>
        </div>
        <div class="navbar-collapse collapse">
            <ul class="nav navbar-nav">
                <li><a href="/">Home</a></li>
            </ul>
        <div> <!-- 这里出了问题,标签没有闭合,应该为</div> -->
    </div>
</div>
{% endblock %}

{% block content %}
<div class="container">
    {% block page_content %}{% endblock %}
</div>
{% endblock %}

{% block scripts %}
{{ super() }}
{{ moment.include_moment() }}
{% endblock %}

错误的代码,已在base.html中指出。

补充:
1.log(其实log中无任何与此问题有关的错误信息。):

(venv_flask_henry) henry@henry-virtual-machine:~/dev/flask_henry$ python hello.py
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [29/Nov/2017 11:07:35] "POST / HTTP/1.1" 200 -
127.0.0.1 - - [29/Nov/2017 11:07:52] "POST / HTTP/1.1" 200 -
127.0.0.1 - - [29/Nov/2017 11:13:25] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [29/Nov/2017 11:13:50] "GET /fuck HTTP/1.1" 404 -
127.0.0.1 - - [29/Nov/2017 11:22:54] "GET /fuck HTTP/1.1" 404 -

2.项目结构:

henry@henry-virtual-machine:~/dev/flask_henry$ ls
hello.py  hello.pyc  README.md  templates  venv_flask_henry
henry@henry-virtual-machine:~/dev/flask_henry/templates$ ls
404.html  500.html  base.html  index.html

小结:
1.抄代码也要小心点。。
2.还是少用文本编辑器吧,如果用的是IDE,核对可以大大减少这种问题。。

参考文献:
1.全靠自己的逻辑分析。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值