Gov.uk Frontend Jinja adalah alat komunitas dari sistem desain Gov.uk. Tim Sistem Desain tidak bertanggung jawab untuk itu dan tidak dapat mendukung Anda menggunakannya. Hubungi pemelihara secara langsung jika Anda membutuhkan bantuan atau Anda ingin meminta fitur.
Repositori ini menyediakan satu set lengkap macro jinja yang tetap mutakhir dan 100% patuh dengan macro nunjucks Gov.uk Nunjucks asli. Porting sengaja secara manual daripada otomatis untuk membuat pembaruan lebih sederhana daripada mempertahankan rutin konversi otomatis. Rangkaian tes komprehensif memastikan kepatuhan terhadap rilis frontend Gov.uk yang terbaru, dan setiap berikutnya.
Jika Anda ingin membangun aplikasi Flask yang sepenuhnya unggulan yang terintegrasi dengan Gov.uk Frontend Jinja dan Gov.uk Frontend WTForms, silakan gunakan repositori templat Flask Frontend Gov.uk untuk menghasilkan aplikasi Anda.
Tabel berikut menunjukkan versi Gov.uk Frontend Jinja yang harus Anda gunakan untuk versi target GOV.uk Frontend:
| Versi Jinja Frontend Gov.uk | Versi target gov.uk frontend |
|---|---|
| 3.4.0 | 5.7.1 |
| 3.3.0 | 5.6.0 |
| 3.2.0 | 5.5.0 |
| 3.1.0 | 5.4.0 |
| 3.0.0 | 5.1.0 |
| 2.8.0 | 4.8.0 |
| 2.7.0 | 4.7.0 |
| 2.6.0 | 4.6.0 |
| 2.5.0 | 4.5.0 |
| 2.4.0 | 4.4.1 |
| 2.3.0 | 4.2.0 |
| 2.2.0 | 4.1.0 |
| 2.1.0 | 4.0.1 |
| 2.0.0 | 4.0.0 |
| 1.6.0 | 3.15.0 |
| 1.5.1 | 3.14.0 |
| 1.4.0 | 3.13.0 |
| 1.3.0 | 3.12.0 |
| 1.2.1 | 3.11.0 |
| 1.1.0 | 3.10.2 |
| 1.0.0 | 3.8.1 |
| 0.2.1 | 3.7.0 |
Versi lain dari frontend GOV.UK yang tidak ditunjukkan di atas mungkin masih kompatibel, tetapi belum diuji dan diverifikasi secara khusus.
Setelah menjalankan pip install govuk-frontend-jinja , pastikan Anda memberi tahu Jinja di mana memuat templat dari menggunakan PackageLoader sebagai berikut:
from flask import Flask
from jinja2 import ChoiceLoader , PackageLoader , PrefixLoader
app = Flask ( __name__ )
app . jinja_loader = ChoiceLoader (
[
PackageLoader ( "app" ),
PrefixLoader ({ "govuk_frontend_jinja" : PackageLoader ( "govuk_frontend_jinja" )}),
]
)Untuk menggunakan komponen dalam templat proyek Anda, Anda harus mengimpor dan menghubungi komponen makro dan melewati opsi yang relevan, misalnya:
{%- from 'govuk_frontend_jinja/components/button/macro.html' import govukButton -%}
{{ govukButton({ 'text': "Save and continue" }) }} Opsi yang tersedia untuk setiap makro komponen dapat ditemukan dalam dokumentasi komponen sistem desain GOV.UK asli. Karena proyek ini adalah port yang suka-untuk, satu-satunya perbedaan antara contoh-contoh Nunjucks dan setara jinja mereka adalah harus mengutip nama-nama kunci, misalnya 'text' alih-alih text .
Tes dijalankan dalam pipa aksi GitHub tetapi jika Anda ingin menjalankannya secara lokal, Anda harus menginstal Govuk-Frontend-Diff.
Ada server uji di tests/utils/app.py yang perlu Anda jalankan menggunakan perintah berikut:
(cd tests/utils && python -m flask run --port 3000) Anda kemudian dapat menjalankan tes menggunakan govuk-frontend-diff sebagai berikut:
./govuk-frontend-diff http://localhost:3000 --govuk-frontend-version=v4.8.0 Ini semua terbungkus di ./test.sh untuk menjalankan yang disederhanakan (membutuhkan Docker).
Kami menggunakan SEMVER untuk versi. Untuk versi yang tersedia, lihat tag di repositori ini.
Kami menyambut kontribusi dari komunitas. Jika Anda ingin berkontribusi pada proyek ini, silakan tinjau Pedoman Kode Etik dan Kontribusi.
Cara memperbarui paket ini mengikuti rilis baru Gov.uk Frontend:
govuk-frontend , bandingkan tag kompatibel terakhir dan tag terbaru, misalnya https://github.com/alphagov/govuk-frontend/compare/v4.3.1...v4.4.0package/govuk/components/<component>/template.njk Baca diff dan terapkan perubahan yang sama pada templat setara jinja di govuk_frontend_jinja/templates/components/<component>/macro.htmlNone yang memeriksa atribut bersarang, memeriksa panjang item array atau operator logika seperti is , not dan in .Lihat daftar lengkap kontributor di GitHub
Perangkat lunak ini disediakan "apa adanya" tanpa jaminan. Dukungan disediakan berdasarkan "upaya terbaik" oleh pengelola dan komunitas open source.
Jika Anda seorang pegawai negeri sipil, Anda dapat mendaftar ke ruang kerja Slack Digital Pemerintah Inggris untuk menghubungi pengelola yang tercantum di atas dan komunitas orang-orang yang menggunakan proyek ini di saluran #-desain-desain-sistem.
Jika tidak, silakan lihat pedoman kontribusi untuk cara menaikkan laporan bug atau permintaan fitur.