SORU
28 Ocak 2011, Cuma


Nasıl Jinja2 bir tarih biçimi mı?Python:

Jinja2 kullanarak, nasıl bir Tarih Alanı formatı mı? Python sadece bunu yapabileceğimi biliyorum

print car.date_of_manufacture.strftime('%Y-%m-%d')

Ama nasıl Jinja2 tarih biçimi mı? Teşekkürler.

CEVAP
28 Ocak 2011, Cuma


Bunu yapmanın iki yolu vardır. Doğrudan yaklaşım sadece (ve baskı) strftime çağırmak() örneğin şablon yöntemi

{{ car.date_of_manufacture.strftime('%Y-%m-%d') }}

Başka, göze hitap eden daha iyi bir yaklaşım kendi filtre tanımlamak için olabilir, örneğin:

def format_datetime(value, format='medium'):
    if format == 'full':
        format="EEEE, d. MMMM y 'at' HH:mm"
    elif format == 'medium':
        format="EE dd.MM.y HH:mm"
    return babel.dates.format_datetime(value, format)

jinja_env.filters['datetime'] = format_datetime

(Bu filtre sebep i18n, ama çok strftime) kullanabilirsiniz ilgili babel dayanmaktadır. Filtrenin avantajı yazabilirsiniz

{{ car.date_of_manufacture|datetime }}

daha güzel görünüyor ve daha rahat. Başka bir ortak filtre de olur "gibi bir şey olarak değerlendirir", "8 dakika önce yazılmış". filtre timedelta Bunun için babel.dates.format_timedelta kullanma ve filtre datetime örnek burada verilen benzer kayıt olabilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Plugable

    Plugable

    19 Mayıs 2010
  • The Amazing Atheist

    The Amazing

    20 Kasım 2006
  • Whizzpopping

    Whizzpopping

    10 Kasım 2005