Merih Forum Programlama ve yazılım algoritmalar programlama python Flask Flask-moment eklentisi ile zaman işlemleri (javascript momentjs eklentisi)

  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Flask-moment eklentisi ile zaman işlemleri (javascript momentjs eklentisi)

 
#1

Javascript ile uğraşanlar momentjs kütüphanesini bilirler. Bu kütüphane ile zaman ile ilgili işlemler için kullanılır. Sosyal medyada sıklıkla gördüğümüz "1 saat önce paylaştı" gibi zaman gösterimlerini kendi sitenizde momentjs ile yapabilirsiniz.

Flask moment eklentisi bu bu kütüphaneyi kullanır. Eklentiyi yüklemek için:

$ pip install flask-moment
Eklentiyi uygulamanıza eklemek için:

from flask import Flask
from flask_moment import Moment
from flask_bootstrap import Bootstrap

app = Flask(__name__)
moment = Moment(app)
bootstrap = Bootstrap(app)
html sayfalarınızda bu eklentiyi kullanmak için bootstrap eklentisini de kullanmanızı öneririm çünkü momentjs kütüphanesini kullanırsanız jquery.js kütüphanesinide kullanmak zorunda kalırsınız. Ama flask-bootstrap eklentisini kurduysanız jquery.js zaten gelmiştir.

Eğer flask-bootstrap ve flask-moment eklentilerini kurduysanız html sayfanızda aşağıdaki gibi moment kütüphanesini kullanabilirsiniz:

#index.html
{% extends 'bootstrap/base.html' %}

{% block scripts %}
{{super()}}
{{moment.include_moment()}} {{moment.lang('tr')}}
{% endblock %}
bu işlemlerden sonra artık moment kütüphanesini index sayfanızda kullanabilirsiniz. Burada gördüğünüz gibi "moment" uygulama eklentisindeki sınıftır. Bu sınıfın metotlarını çağırdık.

Not: Moment ile zaman gösterimlerini bütün sayfa sayfalara uygulayacaksanız tek tek hepsine yazmak yerine bütün sayfalarınızı tek bir sayfadan türetin böylece moment kütüphanesi hepsinde olacaktır.

Yukarıdaki {% block script %}{% endblock %} block tanımı bootstrap/base.html sınıfından türettiğimiz için gelmiştir. Bootstrap eklentisinin base.html sayfasından türettiğinizde bazı block etiketleri varsayılan olarak gelirler. Örnek olarak base.html isminde bir sayfa oluşturalım bundan sonra tüm sayfaları bu sayfadan türetelim:

#base.html
{% extends 'bootstrap/base.html' %}

{% block head %}
{{super()}}
{% block title %} Uygulama ismi {% endblock %}
{% endblock %}

{% block navbar %}
<nav>
<ul>
<li><a href="" title="">Home</a></li>
</ul>
</nav>
{% endblock %}

{% block content%}
{% block page_content %} {% endblock %}
{% endblock %}

{% block scripts %}
{{super()}}
{{moment.include_moment()}} {{moment.lang('tr')}}
{% endblock %}
Yukarıdaki blocklar bootstrap/base.html sayfasında tanımlanmıştır. Bizim base.html sayfasını bu sınıftan türettiğimiz için artık bu bu blockları kalıtımla alabiliriz. Diğer sayfalarımızı bu base.html sayfamızdan türetip block içeriklerini sayfalarımızda değiştirebiliriz.

Flask moment eklentisi ile bir örnek yapalım:

from datetime import datetime

@app.route('/')
def index():
current_time = datetime.utcnow()
return render_template('index.html', current_time=current_time)


#index.html
{% extends 'base.html' %}
<p>{{moment(current_time).from_now(refresh=True)}} önce paylaşıldı</p>



Ara
Cevapla


[-]
Hızlı Cevap

İnsan Doğrulama:
Aşağıda görünen onay kutusunu işaretleyiniz. Bu işlem otomatik spam kayıtları önlemek için kullanılır.

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Flask ile örnek bir uygulama altyapısı efsane 1 2,301 30-05-2017, Saat: 18:14
Son Yorum: dalaylama
  database migration, Flask-migrate eklentisi efsane 0 1,655 30-05-2017, Saat: 17:21
Son Yorum: efsane
  Flask-sqlalchemy ile tablo oluşturma, tablolar arasında ilişki tanımlama efsane 0 1,708 30-05-2017, Saat: 17:19
Son Yorum: efsane
  Flask-sqlalchemy eklentisi, sütun veri tipleri efsane 0 1,660 30-05-2017, Saat: 17:18
Son Yorum: efsane
  flask uygulamasına veritabanı ekleme sqlalchemy, orm efsane 0 1,922 30-05-2017, Saat: 17:16
Son Yorum: efsane

Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  


Konuyu Okuyanlar:
1 Ziyaretçi

   
Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB, © 2002-2021 MyBB Group.  



Merih Forum® bilgi paylaşım platformu. 2015-2020 Tüm hakları saklıdır.