我想在访问index.html时使用Flask-moment来显示网页上的时间 我已经使用了bootstrap,并使用了moment.js,但它仍然不起作用。 请给予一些帮助,谢谢!
我的主要文件
from flask.ext.bootstrap import Bootstrap
from flask.ext.moment import Moment
from flask import request
from datetime import datetime
app = Flask(__name__)
bootstrap=Bootstrap(app)
moment=Moment(app)
@app.route('/')
def index():
return render_template('index.html',current_time=datetime.utcnow())
这是我的base.html,它从bootstrap延伸
{% extends "bootstrap/base.html" %}
{%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">
{% block scripts %} #Here I use the bootstrap
{{ super() }} #But I dont' whether it works or not
{{ moment.include_moment() }}
{% endblock %}
{%endblock%}
{% block title %}Flasky{% 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>
{% endblock %}
{% block content %}
<div class="container">
{% block page_content %}{% endblock %}
</div>
{% endblock %}
最后一个是index.html
<p>The local date and time is {{moment(current_time).format('LLL')}}.</p>
<p>That was {{moment(current_time).fromNow(refresh=True)}}</p>
答案 0 :(得分:1)
如果index.html
仅包含这两行,这显然反映了您在屏幕截图中获得的输出,那么您需要从<{1}}扩展:
base.html
答案 1 :(得分:0)
由于使用了一个旧的教程,因此我进入了此页面,该教程中的烧瓶扩展名是按照上面的操作导入的。因此,这些导入不适用于flask == 1.0.2。我遇到了与您遇到的类似的错误。相反,我建议登陆此页面的任何人都使用以下内容:from flask_bootstrap import Bootstrap
和from flask_moment import Moment
。其他所有内容均在其他答案中提到。快乐的编码。