2015-07-22 4 views
1

Я пытаюсь использовать instant.js, но у меня много проблем с этим. Я в том числе моменты, как описано в руководстве мегаmoments.js, 'type object' не имеет атрибута 'utc'

http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-xiii-dates-and-times

смысл я использую

from flask.ext.moment import Moment 
moment = Moment() 
moment.init_app(app) 

теперь у меня есть функция момент() доступный, который работает в моем случае. Однако, если я хочу, чтобы отобразить время в UTC, я хотел бы подходящий вариант, как объяснить, в документации

http://momentjs.com/docs/

который moment.utc(). Но это приводит к

«объекта типа» не имеет атрибута «» UTC

мне интересно, в чем разница (если таковая имеется) между включением mements я делаю, и только в том числе moments.js в глава? У меня есть много проблем, чтобы заставить time-timezone.js работать, и я думаю, что это связано с тем, что у меня есть с .utc(). любая помощь очень ценится спасибо carl

+1

Его лучше провести время в формате UTC от сервера (термос) и использовать moment.js в вашем JavaScript для преобразования времени UTC в пользователя часовой пояс. Обычно мы передаем время в формате ISO ('datetime.datetime.utcnow(). Isoformat()') с сервера –

ответ

1

Документация, на которую вы ссылаетесь, предназначена для JavaScript.

Код, который вы показываете, написан на Python. Либо найдите соответствующую функцию в оболочке Python для преобразования UTC или вызовите функцию .utc() в JS внутри вашего шаблона представления.

2

Попробуйте это:

from flask import Flask, render_template 
from flask_moment import Moment 
from datetime import datetime 

app = Flask(__name__) 
moment = Moment() 
moment.init_app(app) 

@app.route("/") 
def main_page(): 
    return render_template('main.html', now=datetime.utcnow()) 

if __name__ == "__main__": 
    app.run(debug=True) 

шаблон - main.html

{% block page_content %} 
{{ moment(now).format('LLL') }} 
{% endblock %} 
Смежные вопросы