Flask-moment 无法通过moment.js 在网页上显示时间

我想在主页上显示时间及显示是多少时间之前这2个功能
所以,通过flask-moment模板来进行设置,但是,却无法成功,下面是我的代码,麻烦帮忙看看是哪里出了错??谢谢

这个是应用实例hello.py程序,已经使用了bootstrap

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())

这个是templates下面的base.html文件

{% 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 %} #这里已经引入了moment.js库

{{ super() }} #但是不知道在这里引入是否算正确???

{{ 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>

回答:

你的代码里把block scripts 放到block header中了,他们在bootstrap/base.html中是同级的地位,你拿出来并列试试,应该就好了。

回答:

代码看了没什么问题。你通过浏览器的Network检查下moment.js的js文件是否加载成功?这个默认是在flask库文件site-packages里的,通过cloudflare的cdn远程加载的,如果js文件没有加载成功,moment会无效的。

回答:

在head块插入一下代码即可图片描述

回答:

这是因为flask-moment 把时间隐藏了, 只要把display:none删除就可以,但是自动删除还没有找到方法

以上是 Flask-moment 无法通过moment.js 在网页上显示时间 的全部内容, 来源链接: utcz.com/a/161185.html

回到顶部