Filter Liquid yang tersedia

Catatan

Mulai 12 Oktober 2022, portal Power Apps menjadi Power Pages. Informasi selengkapnya: Microsoft Power Pages kini tersedia secara umum (blog)
Kami akan segera memigrasikan dan menggabungkan dokumentasi portal Power Apps dengan dokumentasi Power Pages.

Filter Liquid digunakan untuk memodifikasi output string, angka, variabel, dan objek. Mereka dipisahkan dari nilai penerapan mereka oleh |.

{{ 'hal 9000' | upcase }} <!-- Output: HAL 9000 -->

Beberapa filter menerima parameter. Filter juga dapat dikombinasikan, dan diterapkan dalam urutan dari kiri ke kanan.

{{ 2 | times: 2 | minus: 1 }} <!-- Output: 3 -->

{{ "Hello, " | append: user.firstname }} <!-- Output: Hello, Dave -->

Bagian bawah menggambarkan berbagai filter.

Filter larik

Filter larik digunakan untuk bekerja dengan larik.

batch

Membagi sebuah larik dalam beberapa larik dari ukuran tertentu.

Kode

{% assign batches = entityview.records | batch: 2 %}

{% for batch in batches %}

<ul>

{% for item in batch %}

<li>{{ item.fullname }}</li>

{% endfor %}

</ul>

{% endfor %}

Output

<ul>

<li>John Smith</li>

<li>Dave Thomas</li>

</ul>

<ul>

<li>Jake Johnson</li>

<li>Jack Robinson</li>

</ul>

concat

Menggabungkan dua larik ke dalam satu larik baru.

Dengan sebuah item sebagai parameter, concat menghasilkan larik baru yang terdiri dari larik yang asli, dengan item yang diberikan sebagai elemen terakhir.

Kode

Group #1: {{ group1 | join: ', ' }}

Group #2: {{ group2 | join: ', ' }}

Group #1 + Group #2: {{ group1 | concat: group2 | join: ', ' }}

Output

Group #1: John, Pete, Hannah

Group #2: Joan, Bill

Group #1 + Group #2: John, Pete, Hannah, Joan, Bill

except

Pilih semua objek dalam sebuah larik yang mana atribut tertentu tidak memiliki nilai yang tertentu. (Ini adalah kebalikan dariwhere.)

Kode

{% assign redmond = entityview.records | except: 'address1_city', 'Redmond' %}

{% for item in redmond %}

{{ item.fullname }}

{% endfor %}

Output

Jack Robinson

pertama

Menghasilkan elemen pertama dari larik.

first juga dapat digunakan dengan notasi titik khusus, dalam kasus yang mana dibutuhkan untuk digunakan di dalam tag.

Kode

{% assign words = This is a run of text | split:   %}

{{ words | first }}

{% if words.first == This %}

The first word is This.

{% endif %}

Output

This

The first word is This.

group_by

Kelompokkan item dalam sebuah larik dengan atribut yang diberikan.

Kode

{% assign groups = entityview.records | group_by: 'address1_city' %}

{% for group in groups %}

{{ group.key }}:

{% for item in group.items %}

{{ item.fullname }}

{% endfor %}

{% endfor %}

Output

Redmond:

John Smith

Dave Thomas

Jake Johnson

New York:

Jack Robinson

join

Menggabung elemen-elemen larik dengan karakter yang dikirimkan sebagai parameter. Hasilnya adalah string tunggal.

Kode

{% assign words = This is a run of text | split:   %}

{{ words | join: ,  }}

Output

This, is, a, run, of, text

terakhir

Menghasilkan elemen terakhir dari larik.

last juga dapat digunakan dengan notasi titik khusus, dalam kasus yang mana dibutuhkan untuk digunakan di dalam tag.

Kode

{% assign words = This is a run of text | split:   -%}

{{ words | last }}

{% if words.last == text -%}

The last word is text.

{% endif -%}

Output

text

The last word is text.

order_by

Menghasilkan unsur-unsur dari sebuah larik yang diurutkan menurut sebuah atribut tertentu elemen larik.

Opsional, Anda dapat memberikan desc sebagai parameter kedua untuk menyortir elemen dalam urutan menurun, bukan naik.

Kode

{{ entityview.records | order_by: 'fullname' | join: ', ' }}

{{ entityview.records | order_by: 'fullname', 'desc' | join: ', ' }}

Output

Dave Thomas, Jack Robinson, Jake Johnson, John Smith

John Smith, Jake Johnson, Jack Robinson, Dave Thomas

random

Menghasilkan satu item yang dipilih secara acak dari larik.

Kode

{{ group1 | join: ', ' }}

{{ group1 | random }}

Output

John, Pete, Hannah

Pete

select

Memilih nilai dari atribut tertentu untuk setiap item dalam larik, dan menghasilkan nilai-nilai ini sebagai larik.

Kode

{{ entityview.records | select: 'address1_city' | join: ', ' }}

Output

Redmond, New York

shuffle

Diterapkan ke larik, mengembalikan larik baru dengan item yang sama, dalam urutan acak.

Kode

{{ group1 | join: ', ' }}

{{ group1 | shuffle | join: ', ' }}

Output

John, Pete, Hannah

Hannah, John, Pete

size

Menghasilkan jumlah item dalam larik.

size juga dapat digunakan dengan notasi titik khusus, dalam kasus yang mana dibutuhkan untuk digunakan di dalam tag.

Kode

{% assign words = This is a run of text | split:   -%}

{{ words | size }}

{% if words.size == 6 -%}

The text contains 6 words.

{% endif -%}

Output

6

The text contains 6 words.

skip

Melompat jumlah item tertentu dalam larik, dan menghasilkan sisanya.

Kode

{% assign words = This is a run of text | split:   %}

{{ words | skip: 3 | join: ', ' }}

Output

run, of, text

take

Mengambil sejumlah tertentu item dari larik, menghasilkan item yang diambil.

Kode

{% assign words = This is a run of text | split:   %}

{{ words | take: 3 | join: ', ' }}

Output


This, is, a

then_by

Menambahkan urutan berikutnya ke larik yang sudah diperintahkan olehorder_by.

Opsional, Anda dapat memberikan desc sebagai parameter kedua untuk menyortir elemen dalam urutan menurun, bukan naik.

Kode

{{ entityview.records | order_by: 'address1_city' | then_by: 'fullname' | join: ', ' }}

{{ entityview.records | order_by: 'address1_city' | then_by: 'fullname', 'desc' | join: ', ' }}

Output

Dave Thomas, Jack Robinson, Jake Johnson, John Smith

John Smith, Jake Johnson, Jack Robinson, Dave Thomas

lokasi

Pilih semua objek dalam sebuah larik yang mana atribut tertentu memiliki nilai yang tertentu.

Kode

{% assign redmond = entityview.records | where: 'address1_city', 'Redmond' %}

{% for item in redmond %}

{{ item.fullname }}

{% endfor %}

Output

John Smith

Dave Thomas

Jake Johnson

Filter tanggal

Filter tanggal dapat digunakan untuk aritmatika tanggal atau untuk mengkonversi nilai-nilai DateTime ke dalam berbagai format.

date

Memformat nilai DateTime dengan menggunakan string format .NET.

String Format waktu dan tanggal standar

String Format waktu dan tanggal Kustom

Kode

{{ now | date: 'g' }}

{{ now | date: 'MMMM dd, yyyy' }}

Output

5/7/2018 7:20 AM

May 07, 2018

date_add_days

Menambah jumlah yang ditentukan dari seluruh dan pecahan hari pada nilai DateTime. Parameter dapat menjadi positif atau negatif.

Kode

{{ now }}

{{ now | date_add_days: 1 }}

{{ now | date_add_days: -2.5 }}

Output

5/7/2018 7:20:46 AM

5/8/2018 7:20:46 AM

5/4/2018 7:20:46 PM

date_add_hours

Menambah jumlah yang ditentukan dari seluruh dan pecahan jam pada nilai DateTime. Parameter dapat menjadi positif atau negatif.

Kode

{{ now }}

{{ now | date_add_hours: 1 }}

{{ now | date_add_hours: -2.5 }}

Output

5/7/2018 7:20:46 AM

5/7/2018 8:20:46 AM

5/7/2018 4:50:46 AM

date_add_minutes

Menambah jumlah yang ditentukan dari seluruh dan pecahan menit pada nilai DateTime. Parameter dapat menjadi positif atau negatif.

Kode

{{ now }}

{{ now | date_add_minutes: 10 }}

{{ now | date_add_minutes: -2.5 }}

Output

5/7/2018 7:20:46 AM

5/7/2018 7:30:46 AM

5/7/2018 7:18:16 AM

date_add_months

Menambah jumlah yang ditentukan dari seluruh dan pecahan bulan pada nilai DateTime. Parameter dapat menjadi positif atau negatif.

Kode

{{ now }}

{{ now | date_add_months: 1 }}

{{ now | date_add_months: -2 }}

Output

5/7/2018 7:20:46 AM

6/7/2018 7:20:46 AM

3/7/2018 7:20:46 AM

date_add_seconds

Menambah jumlah yang ditentukan dari seluruh dan pecahan detik pada nilai DateTime. Parameter dapat menjadi positif atau negatif.

Kode

{{ now }}

{{ now | date_add_seconds: 10 }}

{{ now | date_add_seconds: -1.25 }}

Output

5/7/2018 7:20:46 AM

5/7/2018 7:20:56 AM

5/7/2018 7:20:45 AM

date_add_years

Menambah jumlah yang ditentukan dari seluruh dan pecahan tahun pada nilai DateTime. Parameter dapat menjadi positif atau negatif.

Kode

{{ now }}

{{ now | date_add_years: 1 }}

{{ now | date_add_years: -2 }}

Output

5/7/2018 7:20:46 AM

5/7/2019 7:20:46 AM

5/7/2016 7:20:46 AM

date_to_iso8601

Memformat nilai DateTime menurut ISO 8601 standar. Berguna ketika membuat elemen Atom feed, atau elemen <time> HTML5.

Kode

{{ now | date_to_iso8601 }}

Output

2018-05-07T07:20:46Z

date_to_rfc822

Memformat nilai DateTime menurut RFC 822 standar. Berguna ketika membuat RSS feed.

Kode

{{ now | date_to_rfc822 }}

Output

Mon, 07 May 2018 07:20:46 Z

Filter daftar

Filter daftar digunakan untuk bekerja dengan nilai atribut entitylist, dan untuk membantu membuat tampilan daftar.

current_sort

Dalam ekspresi urutan tertentu, menghasilkan arah sortiran saat ini untuk atribut tertentu.

Kode

{{ 'name ASC, createdon DESC' | current_sort: 'createdon' }}

Output

DESC

metafilters

Mem-parsing nilai JSON definisi entitylist filter_ke objek grup pilihan filter.

metafilters dapat opsional disediakan dengan kueri filter atribut saat ini dan entitylist saat ini, yang memungkinkan objek filter yang dihasilkan untuk ditandai sebagai dipilih atau tidak dipilih.

Kode

{% assign filters = entitylist | metafilters: params.mf, entityview %}
{% if filters.size > 0 %}
  <ul id=entitylist-filters>
    {% for filter in filters %}
      <li class=entitylist-filter-option-group>
        {% if filter.selection_mode == 'Single' %}
          {% assign type = 'radio' %}
        {% else %}
          {% assign type = 'checkbox' %}
        {% endif %}
        <h4 class=entitylist-filter-option-group-label
          data-filter-id={{ filter.id | h }}>
          {{ filter.label | h }}
        </h4>
        <ul>
          {% for option in filter.options %}
            <li class=entitylist-filter-option>
              {% if option.type == 'text' %}
                <div class=input-group entitylist-filter-option-text>
                  <span class=input-group-addon>
                    <span class=fa fa-filter aria-hidden=true></span>
                  </span>
                  <input class=form-control
                    type=text
                    name={{ filter.id | h }}
                    value={{ option.text | h }} />
                </div>
              {% else %}
                <div class={{ type | h }}>
                  <label>
                    <input
                      type={{ type | h }}
                      name={{ filter.id | h }}
                      value={{ option.id | h }}
                      {% if option.checked %}
                        checked=checked
                        data-checked=true{% endif %}
                      />
                    {{ option.label | h }}
                  </label>
                </div>
              {% endif %}
            </li>
          {% endfor %}
        </ul>
      </li>
    {% endfor %}
  </ul>
  <button class=btn btn-default data-serialized-query=mf data-target=#entitylist-filters>Apply Filters</button>
{% endif %}

reverse_sort

Dalam arah sortiran tertentu, menghasilkan arah sortiran yang berlawanan.

Kode

<!-- Sort direction is not case-sensitive -->

{{ 'ASC' | reverse_sort }}

{{ 'desc' | reverse_sort }}

Output

DESC

ASC

Filter Matematika

Filter Matematika memungkinkan Anda untuk melakukan operasi matematika pada angka.

Seperti pada semua filter, filter matematika juga dapat dibuat berantai, dan diterapkan dalam urutan dari kiri ke kanan.

Kode

{{ 10 | times: 2 | minus: 5 | divided_by: 3 }}

Output

5

ceil

Membulatkan nilai ke atas hingga bilangan bulat terdekat.

Kode

{{ 4.6 | ceil }}

{{ 4.3 | ceil }}

Output

5

5

divided_by

Membagi angka dengan angka lain.

Kode

{{ 10 | divided_by: 2 }}

{{ 10 | divided_by: 3 }}

{{ 10.0 | divided_by: 3 }}

Output

5

3

3.333333

floor

Membulatkan nilai ke bawah hingga bilangan bulat terdekat.

Kode

{{ 4.6 | floor }}

{{ 4.3 | floor }}

Output

4

4

minus

Mengurangi angka dari angka lain.

Kode

<!-- entityview.page = 11 -->

{{ entityview.page | minus: 1 }}

{{ 10 | minus: 1.1 }}

{{ 10.1 | minus: 1 }}

Output

10

9

9.1

modulo

Membagi angka dengan angka lain dan menghasilkan sisanya.

Kode

{{ 12 | modulo: 5 }}

Output

2

plus

Menambahkan angka ke angka lain.

Kode

<!-- entityview.page = 11 -->

{{ entityview.page | plus: 1 }}

{{ 10 | plus: 1.1 }}

{{ 10.1 | plus: 1 }}

Output

12

11

11.1

round

Putaran nilai bilangan bulat terdekat atau jumlah desimal yang ditentukan.

Kode

{{ 4.6 | round }}

{{ 4.3 | round }}

{{ 4.5612 | round: 2 }}

Output

5

4

4.56

times

Mengalikan angka dengan angka lain.

Kode

{{ 10 | times: 2 }}

{{ 10 | times: 2.2 }}

{{ 10.1 | times: 2 }}

Output

20

20

20.2

Filter string

Filter string Memanipulasi string.

append

Menambahkan string ke ujung string lain.

Kode

{{ 'filename' | append: '.js' }}

Output

filename.js

capitalize

memanfaatkan kata pertama dalam string.

Kode

{{ 'capitalize me' | capitalize }}

Output

Capitalize Me

downcase

Mengkonversi string ke dalam huruf kecil.

Kode

{{ 'MIxed Case TExt' | downcase }}

Output

mixed case text

escape

Meloloskan string secara HTML

Kode

{{ '<p>test</p>' | escape }}

Output

&lt;p&gt;test&lt;/p&gt;

newline_to_br

Menyisipkan tag HTML penggal baris <br /> di setiap penggal baris dalam string.

Kode

{% capture text %}

A

B

C

{% endcapture %}

{{ text | newline_to_br }}

Output

A<br />

B<br />

C<br />

prepend

Menambahkan string ke awal string lain.

Kode

{{ 'Jane Johnson' | prepend: 'Dr. ' }}

Output

Dr. Jane Johnson

remove

Hapus semua kemunculan substring dari string.

Kode

{{ 'Hello, Dave. How are you, Dave?' | remove: 'Dave' }}

Output

Hello, . How are you, ?

remove_first

Menghapus kemunculan pertama substring dari string.

Kode

{{ 'Hello, Dave. How are you, Dave?' | remove_first: 'Dave' }}

Output

Hello, . How are you, Dave?

replace

Menghapus semua kemunculan string dengan substring.

Kode

{{ 'Hello, Dave. How are you, Dave?' | replace: 'Dave', 'John' }}

Output

Hello, John. How are you, John?

replace_first

Mengganti kemunculan pertama string dengan substring.

Kode

{{ 'Hello, Dave. How are you, Dave?' | replace_first: 'Dave', 'John' }}

Output

Hello, John. How are you, Dave?

split

Filter split memperlakukan substring sebagai parameter. Substring digunakan sebagai pembatas untuk membagi sebuah string ke dalam larik.

Kode

{% assign words = This is a demo of the split filter | split: ' ' %}

First word: {{ words.first }}

First word: {{ words[0] }}

Second word: {{ words[1] }}

Last word: {{ words.last }}

All words: {{ words | join: ', ' }}

Output

First word: This

First word: This

Second word: is

Last word: filter

All words: This, is, a, demo, of, the, split, filter

strip_html

Menghapus semua tag HTML dari string.

Kode

<p>Hello</p>

Output

Hello

strip_newlines

Menghapus penggal baris dari string.

Kode

{% capture text %}

A

B

C

{% endcapture %}

{{ text | strip_newlines }}

Output

ABC

text_to_html

Memformat teks polos sebagai HTML sederhana. Semua teks akan dikodekan HTML, blok teks yang dipisahkan oleh baris kosong akan dibungkus dalam tag <p> paragraf, penggal baris tunggal akan diganti dengan <br>, dan URL akan diubah ke hyperlink.

Kode

{{ note.notetext | text_to_html }}

Output

<p>This is the first paragraph of notetext. It contains a URL: <a href="https://example.com/" rel="nofollow">https://example.com</a></p>

<p>This is a second paragraph.</p>

truncate

Memotong string ke sejumlah karakter tertentu. Elipsis (...) ditambahkan ke string dan termasuk dalam jumlah karakter.

Kode

{{ 'This is a long run of text.' | truncate: 10 }}

Output

This is...

truncate_words

Memotong string ke sejumlah kata tertentu. Elipsis (...) ditambahkan ke string terpotong.

Kode

{{ 'This is a long run of text.' | truncate_words: 3 }}

Output

This is a...

upcase

Mengkonversi string ke dalam huruf besar.

Kode

{{ 'MIxed Case TExt' | upcase }}

Output

MIXED CASE TEXT

url_escape

Meloloskan string secara URI, untuk dimasukkan ke dalam URL.

Kode

{{ 'This & that//' | url_escape }}

Output

This+%26+that%2F%2F

xml_escape

Meloloskan string secara XML, untuk dimasukkan ke dalam output XML.

Kode

{{ '<p>test</p>' | xml_escape }}

Output

&lt;p&gt;test&lt;/p&gt;

Filter Jenis

Filter Jenis memungkinkan Anda untuk mengkonversi nilai-nilai jenis yang satu ke jenis lain.

boolean

Berupaya untuk mengkonversi nilai string ke Boolean. Jika nilai sudah Boolean, itu akan dihasilkan tidak berubah. Jika nilai tidak dapat diubah menjadi Boolean, null akan dihasilkan.

Filter ini akan juga menerima on, enabled, atau true sebagai , dan off, disabled, dan no sebagai false.

Kode

{{ true | boolean }}

{{ 'false' | boolean }}

{{ 'enabled' | boolean }}

{{ settings['something/enabled'] | boolean | default: false }}

Output

true

false

true

false

decimal

Berupaya untuk mengkonversi nilai string ke angka desimal. Jika nilai sudah angka desimal, itu akan dihasilkan tidak berubah. Jika nilai tidak dapat diubah menjadi angka desimal, null akan dihasilkan.

Kode

{{ 10.1 | decimal }}

{{ '3.14' | decimal }}

{{ 'text' | decimal | default: 3.14 }}

Output

10.1

3.14

3.14

integer

Berupaya untuk mengkonversi nilai string ke bilangan bulat. Jika nilai sudah bilangan bulat, itu akan dihasilkan tidak berubah. Jika nilai tidak dapat diubah menjadi bilangan bulat, null akan dihasilkan.

Kode

{{ 10 | integer }}

{{ '10' | integer }}

{{ '10.1' | integer }}

{{ 'text' | integer | default: 2 }}

Output

10

10


2

string

Berupaya untuk mengkonversi nilai string ke representasinya. Jika nilai sudah string, itu akan dihasilkan tidak berubah. Jika nilai null, null akan dihasilkan.

filter URL

Filter URL memungkinkan Anda untuk membangun atau ekstrak bagian URL.

add_query

Menambahkan parameter string kueri ke URL. Jika parameter sudah ada dalam URL, nilai parameter akan diperbarui.

Jika filter ini diterapkan ke URL penuh mutlak, URL absolut diperbarui akan menjadi hasil. Jika diterapkan untuk jalur, jalur yang diperbarui akan menjadi hasil.

Kode

{{ 'https://example.com/path?page=1' | add_query: 'foo', 'bar' }}

{{ '/path?page=1' | add_query: 'page', 2 }}

Output

https://example.com/path?page=1&foo=bar

/path?page=2

base

Mendapat URL basis dari URL yang diberikan.

Kode

{{ 'https://example.com/path?foo=bar&page=2' | base }}

Output

https://example.com

host

Mendapat bagian inang URL.

Kode

{{ 'https://example.com/path?foo=bar&page=2' | host }}

Output

example.com

path

Mendapat bagian jalur URL.

Kode

{{ 'https://example.com/path?foo=bar&page=2' | path }}

{{ '/path?foo=bar&page=2' | path }}

Output

/path

/path

path_and_query

Mendapat bagian jalur dan kueri URL.

Kode

{{ 'https://example.com/path?foo=bar&page=2' | path_and_query }}

{{ '/path?foo=bar&page=2' | path_and_query }}

Output

/path?foo=bar&page=2

/path?foo=bar&page=2

port

Mendapatkan nomor port URL.

Kode

{{ 'https://example.com/path?foo=bar&page=2' | port }}

{{ 'https://example.com/path?foo=bar&page=2' | port }}

{{ 'https://example.com:9000/path?foo=bar&page=2' | port }}

Output

80

443

9000

remove_query

Menghapus parameter string kueri dari URL. Jika parameter tidak ada dalam URL, URL akan dikembalikan tidak berubah.

Jika filter ini diterapkan ke URL penuh mutlak, URL absolut diperbarui akan menjadi hasil. Jika diterapkan untuk jalur, jalur yang diperbarui akan menjadi hasil.

Kode

{{ 'https://example.com/path?page=1' | remove_query: 'page' }}

{{ '/path?page=1' | remove_query: 'page' }}

Output

https://example.com/path

/path

scheme

Mendapat bagian skema URL.

Kode

{{ 'https://example.com/path?foo=bar&page=2' | scheme }}

{{ 'https://example.com/path?foo=bar&page=2' | scheme }}

Output

http

https

Filter Tambahan

Filter ini menyediakan fungsi umum yang berguna.

default

Menghasilkan nilai standar untuk setiap variabel dengan tidak ada nilai yang ditetapkan (yaitu null).

Kode

{{ snippets[Header] | default: 'My Website' }}

Output

<!-- If a snippet with the name Header returns null -->

My Website

file_size

Diterapkan untuk nilai angka yang mewakili sejumlah byte, menghasilkan ukuran file diformat dengan unit skala yang sesuai.

Opsional, parameter presisi dapat diteruskan, untuk mengontrol jumlah tempat desimal di hasilnya. Presisi default adalah 1.

Kode

{{ 10000000 | file_size }}

{{ 2050 | file_size: 0 }}

{{ entity.notes.first.filesize | file_size: 2 }}

Output

9.5 MB

2 KB

207.14 KB

has_role

Diterapkan pada pengguna, menghasilkan true jika pengguna tercakup pada peran tertentu. Menghasilkan false jika tidak.

Kode

{% assign is_admin = user | has_role: 'Administrators' %}

{% if is_admin %}

User is an administrator.

{% endif %}

liquid

Menuliskan string sebagai kode Liquid. Kode ini akan memiliki akses konteks eksekusi Liquid saat ini (variabel, dll.).

Catatan

Filter ini harus digunakan dengan hati-hati dan umumnya harus hanya diterapkan untuk nilai-nilai yang ada di bawah kendali eksklusif penulis konten portal, atau pengguna lain yang dapat dipercaya untuk menulis kode Liquid.

Kode

{{ page.adx_copy | liquid }}

Lihat juga

Menyimpan sumber konten menggunakan web template
Memahami operator Liquid Jenis Liquid
Objek Liquid
Tag Liquid
Filter Liquid

Catatan

Apa bahasa dokumentasi yang Anda inginkan? Lakukan survei singkat. (perlu diketahui bahwa survei ini dalam bahasa Inggris)

Survei akan berlangsung kurang lebih selama tujuh menit. Tidak ada data pribadi yang dikumpulkan (pernyataan privasi).