Filtre Liquid disponibile
Notă
Începând cu 12 octombrie 2022, portalurile Power Apps sunt Power Pages. Mai multe informații: Microsoft Power Pages este acum disponibil în general (blog)
În curând vom migra și vom îmbina documentația portalurilor Power Apps cu documentația Power Pages.
Filtrele lichide sunt utilizate pentru a modifica ieșirea pentru șiruri, numere, variabile și obiecte. Acestea sunt separate de valoarea la care sunt aplicate de o |.
{{ 'hal 9000' | upcase }} <!-- Output: HAL 9000 -->
Unele filtre acceptă parametri. Filtrele pot fi combinate, de asemenea, și se aplică în ordine, de la stânga la dreapta.
{{ 2 | times: 2 | minus: 1 }} <!-- Output: 3 -->
{{ "Hello, " | append: user.firstname }} <!-- Output: Hello, Dave -->
Secțiunea de mai jos descrie diferite filtre.
Filtre de matrice
Sunt utilizate filtre de matrice pentru a lucra cu matrice.
batch
Împarte o matrice în mai multe matrici de o anumită dimensiune.
Cod
{% assign batches = entityview.records | batch: 2 %}
{% for batch in batches %}
<ul>
{% for item in batch %}
<li>{{ item.fullname }}</li>
{% endfor %}
</ul>
{% endfor %}
Ieșire
<ul>
<li>John Smith</li>
<li>Dave Thomas</li>
</ul>
<ul>
<li>Jake Johnson</li>
<li>Jack Robinson</li>
</ul>
concat
Concatenează două matrice într-o singură matrice nouă.
Având un singur obiect ca parametru, concat returnează o matrice nouă, care constă din matricea originală, cu elementul dat ca ultim element.
Cod
Group #1: {{ group1 | join: ', ' }}
Group #2: {{ group2 | join: ', ' }}
Group #1 + Group #2: {{ group1 | concat: group2 | join: ', ' }}
Ieșire
Group #1: John, Pete, Hannah
Group #2: Joan, Bill
Group #1 + Group #2: John, Pete, Hannah, Joan, Bill
except
Selectați toate obiectele într-o matrice în cazul în care un anumit atribut nu are o anumită valoare. (Acest lucru este inversul lui unde.)
Cod
{% assign redmond = entityview.records | except: 'address1_city', 'Redmond' %}
{% for item in redmond %}
{{ item.fullname }}
{% endfor %}
Ieșire
Jack Robinson
Prima
Returnează primul element al șirului.
first poate fi folosit, de asemenea, cu o notație punct specială, în cazurile în care trebuie utilizat în interiorul unei etichete.
Cod
{% assign words = This is a run of text | split: %}
{{ words | first }}
{% if words.first == This %}
The first word is This.
{% endif %}
Ieșire
This
The first word is This.
group_by
Grupați elementele într-o matrice după un anumit atribut.
Cod
{% assign groups = entityview.records | group_by: 'address1_city' %}
{% for group in groups %}
{{ group.key }}:
{% for item in group.items %}
{{ item.fullname }}
{% endfor %}
{% endfor %}
Ieșire
Redmond:
John Smith
Dave Thomas
Jake Johnson
New York:
Jack Robinson
join
Alipește elementele unui vector cu caractrul transmis ca parametru. Rezultatul este un singur șir.
Cod
{% assign words = This is a run of text | split: %}
{{ words | join: , }}
Ieșire
This, is, a, run, of, text
ultimul
Returnează ultimul element al unui șir.
last poate fi folosit, de asemenea, cu o notație punct specială, în cazurile în care trebuie utilizat în interiorul unei etichete.
Cod
{% assign words = This is a run of text | split: -%}
{{ words | last }}
{% if words.last == text -%}
The last word is text.
{% endif -%}
Ieșire
text
The last word is text.
order_by
Returnează elementele unui șir ordonat după un atribut dat, al elementelor din matrice.
Opțional, puteți să furnizați desc ca un al doilea parametru, pentru a sorta elementele în ordine descrescătoare, mai degrabă decât ascendent.
Cod
{{ entityview.records | order_by: 'fullname' | join: ', ' }}
{{ entityview.records | order_by: 'fullname', 'desc' | join: ', ' }}
Ieșire
Dave Thomas, Jack Robinson, Jake Johnson, John Smith
John Smith, Jake Johnson, Jack Robinson, Dave Thomas
random
Întoarce un singur element selectat aleator din matrice.
Cod
{{ group1 | join: ', ' }}
{{ group1 | random }}
Ieșire
John, Pete, Hannah
Pete
select
Selectează valoarea unui atribut dat pentru fiecare element dintr-o matrice și întoarce aceste valori ca un șir.
Cod
{{ entityview.records | select: 'address1_city' | join: ', ' }}
Ieșire
Redmond, New York
shuffle
Aplicat la o matrice, returnează o matrice nouă cu aceleași elemente, în ordine randomizată.
Cod
{{ group1 | join: ', ' }}
{{ group1 | shuffle | join: ', ' }}
Ieșire
John, Pete, Hannah
Hannah, John, Pete
size
Returnează numărul de elemente dintr-o matrice.
size poate fi folosit, de asemenea, cu o notație punct specială, în cazurile în care trebuie utilizat în interiorul unei etichete.
Cod
{% assign words = This is a run of text | split: -%}
{{ words | size }}
{% if words.size == 6 -%}
The text contains 6 words.
{% endif -%}
Ieșire
6
The text contains 6 words.
skip
Sare peste un anumit număr de elemente într-o matrice și întoarce restul.
Cod
{% assign words = This is a run of text | split: %}
{{ words | skip: 3 | join: ', ' }}
Ieșire
run, of, text
take
Preia un anumit număr de elemente din șir, returnând elementele preluate.
Cod
{% assign words = This is a run of text | split: %}
{{ words | take: 3 | join: ', ' }}
Ieșire
This, is, a
then_by
Adaugă ordonare suplimentară ulterioară la o matrice deja ordonată cu order_by.
Opțional, puteți să furnizați desc ca un al doilea parametru, pentru a sorta elementele în ordine descrescătoare, mai degrabă decât ascendent.
Cod
{{ entityview.records | order_by: 'address1_city' | then_by: 'fullname' | join: ', ' }}
{{ entityview.records | order_by: 'address1_city' | then_by: 'fullname', 'desc' | join: ', ' }}
Ieșire
Dave Thomas, Jack Robinson, Jake Johnson, John Smith
John Smith, Jake Johnson, Jack Robinson, Dave Thomas
where
Selectați toate obiectele dintr-o matrice în care un anumit atribut are o anumită valoare.
Cod
{% assign redmond = entityview.records | where: 'address1_city', 'Redmond' %}
{% for item in redmond %}
{{ item.fullname }}
{% endfor %}
Ieșire
John Smith
Dave Thomas
Jake Johnson
Filtre dată
Filtrele dată pot fi utilizate pentru aritmetice cu date sau pentru a converti valori DateTime la diverse formate.
dată
Formatează o valoare DateTime folosind un șir de format .NET.
Șiruri standard pentru formatul Dată și oră
Șiruri personalizate pentru formatul Dată și oră
Cod
{{ now | date: 'g' }}
{{ now | date: 'MMMM dd, yyyy' }}
Ieșire
5/7/2018 7:20 AM
May 07, 2018
date_add_days
Adaugă numărul specificat de zile întregi și fracționare la valoarea DateTime. Parametrul poate fi pozitiv sau negativ.
Cod
{{ now }}
{{ now | date_add_days: 1 }}
{{ now | date_add_days: -2.5 }}
Ieșire
5/7/2018 7:20:46 AM
5/8/2018 7:20:46 AM
5/4/2018 7:20:46 PM
date_add_hours
Adaugă numărul specificat de ore întregi și fracționare la valoarea DateTime. Parametrul poate fi pozitiv sau negativ.
Cod
{{ now }}
{{ now | date_add_hours: 1 }}
{{ now | date_add_hours: -2.5 }}
Ieșire
5/7/2018 7:20:46 AM
5/7/2018 8:20:46 AM
5/7/2018 4:50:46 AM
date_add_minutes
Adaugă numărul specificat de minute întregi și fracționare la valoarea DateTime. Parametrul poate fi pozitiv sau negativ.
Cod
{{ now }}
{{ now | date_add_minutes: 10 }}
{{ now | date_add_minutes: -2.5 }}
Ieșire
5/7/2018 7:20:46 AM
5/7/2018 7:30:46 AM
5/7/2018 7:18:16 AM
date_add_months
Adaugă numărul specificat de luni întregi la valoarea DateTime. Parametrul poate fi pozitiv sau negativ.
Cod
{{ now }}
{{ now | date_add_months: 1 }}
{{ now | date_add_months: -2 }}
Ieșire
5/7/2018 7:20:46 AM
6/7/2018 7:20:46 AM
3/7/2018 7:20:46 AM
date_add_seconds
Adaugă numărul specificat de secunde întregi și fracționare la valoarea DateTime. Parametrul poate fi pozitiv sau negativ.
Cod
{{ now }}
{{ now | date_add_seconds: 10 }}
{{ now | date_add_seconds: -1.25 }}
Ieșire
5/7/2018 7:20:46 AM
5/7/2018 7:20:56 AM
5/7/2018 7:20:45 AM
date_add_years
Adaugă numărul specificat de ani întregi la valoarea DateTime. Parametrul poate fi pozitiv sau negativ.
Cod
{{ now }}
{{ now | date_add_years: 1 }}
{{ now | date_add_years: -2 }}
Ieșire
5/7/2018 7:20:46 AM
5/7/2019 7:20:46 AM
5/7/2016 7:20:46 AM
date_to_iso8601
Formatează o valoare DatăOră conform standardului ISO 8601. Utilă atunci când se creează fluxul Atom sau elementul HTML5 <time>.
Cod
{{ now | date_to_iso8601 }}
Ieșire
2018-05-07T07:20:46Z
date_to_rfc822
Formatează o valoare DatăOră conform standardului RFC 822. Utilă la crearea de fluxuri RSS.
Cod
{{ now | date_to_rfc822 }}
Ieșire
Mon, 07 May 2018 07:20:46 Z
Filtrele listei
Filtrele listei sunt utilizate pentru a lucra cu anumite valori de atribut listădeentități și pentru a ajuta la crearea vizualizărilor listei.
current_sort
Cu o expresie de sortare dată, întoarce direcția de sortare curentă pentru un anumit atribut.
Cod
{{ 'name ASC, createdon DESC' | current_sort: 'createdon' }}
Ieșire
DESC
metafilters
Analizează o valoare JSON a unei definiții filtru listădeentități_ în obiecte ale unui grup de opțiuni de filtrare.
metafiltre pot fi prevăzute opțional cu o interogare de filtru de atribut curent și cu lista de entități curente, permițând ca obiectele filtru returnate să fie semnalizate ca selectate sau neselectate.
Cod
{% 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
Cu o direcție de sortare dată, întoarce direcția opusă de sortare.
Cod
<!-- Sort direction is not case-sensitive -->
{{ 'ASC' | reverse_sort }}
{{ 'desc' | reverse_sort }}
Ieșire
DESC
ASC
Filtre de matematică
Filtrele de matematică vă permit să efectuați operații matematice cu numere.
La fel ca în cazul tuturor filtrelor, filtrele de matematică pot fi combinate și se aplică în ordine, de la stânga la dreapta.
Cod
{{ 10 | times: 2 | minus: 5 | divided_by: 3 }}
Ieșire
5
ceil
Rotunjește o valoare în sus până la cel mai apropiat întreg.
Cod
{{ 4.6 | ceil }}
{{ 4.3 | ceil }}
Ieșire
5
5
divided_by
Împarte un număr la un alt număr.
Cod
{{ 10 | divided_by: 2 }}
{{ 10 | divided_by: 3 }}
{{ 10.0 | divided_by: 3 }}
Ieșire
5
3
3.333333
floor
Rotunjește o valoare în jos până la cel mai apropiat întreg.
Cod
{{ 4.6 | floor }}
{{ 4.3 | floor }}
Ieșire
4
4
minus
Scade un număr din alt număr.
Cod
<!-- entityview.page = 11 -->
{{ entityview.page | minus: 1 }}
{{ 10 | minus: 1.1 }}
{{ 10.1 | minus: 1 }}
Ieșire
10
9
9.1
modulo
Împarte un număr la un alt număr și întoarce restul.
Cod
{{ 12 | modulo: 5 }}
Ieșire
2
plus
Adună un număr cu un alt numãr.
Cod
<!-- entityview.page = 11 -->
{{ entityview.page | plus: 1 }}
{{ 10 | plus: 1.1 }}
{{ 10.1 | plus: 1 }}
Ieșire
12
11
11.1
round
Rotunjește o valoare la cel mai apropiat întreg sau la numărul specificat de zecimale.
Cod
{{ 4.6 | round }}
{{ 4.3 | round }}
{{ 4.5612 | round: 2 }}
Ieșire
5
4
4.56
times
Înmulțește un număr cu un alt număr.
Cod
{{ 10 | times: 2 }}
{{ 10 | times: 2.2 }}
{{ 10.1 | times: 2 }}
Ieșire
20
20
20.2
Filtre de șir
Filtrele de șir controlează șirurile.
adăugare
Adaugă un șir la sfârșitul unui alt șir.
Cod
{{ 'filename' | append: '.js' }}
Ieșire
filename.js
capitalize
scrie cu majuscule primul cuvânt dintr-un șir.
Cod
{{ 'capitalize me' | capitalize }}
Ieșire
Capitalize Me
downcase
Transformă un șir în litere mici.
Cod
{{ 'MIxed Case TExt' | downcase }}
Ieșire
mixed case text
escape
HTML-omite un șir.
Cod
{{ '<p>test</p>' | escape }}
Ieșire
<p>test</p>
newline_to_br
Introduce o etichetă HTML de sfârșit de linie <br /> în fiecare sfârșit de linie dintr-un șir.
Cod
{% capture text %}
A
B
C
{% endcapture %}
{{ text | newline_to_br }}
Ieșire
A<br />
B<br />
C<br />
prepend
Setează un șir la începutul unui alt șir.
Cod
{{ 'Jane Johnson' | prepend: 'Dr. ' }}
Ieșire
Dr. Jane Johnson
remove
Eliminați toate ocurențele unui subșir dintr-un șir.
Cod
{{ 'Hello, Dave. How are you, Dave?' | remove: 'Dave' }}
Ieșire
Hello, . How are you, ?
remove_first
Elimină prima apariție a unui subșir dintr-un șir.
Cod
{{ 'Hello, Dave. How are you, Dave?' | remove_first: 'Dave' }}
Ieșire
Hello, . How are you, Dave?
replace
Înlocuiește toate ocurențele unui șir cu un subșir.
Cod
{{ 'Hello, Dave. How are you, Dave?' | replace: 'Dave', 'John' }}
Ieșire
Hello, John. How are you, John?
replace_first
Înlocuiește prima apariție a unui șir cu un subșir.
Cod
{{ 'Hello, Dave. How are you, Dave?' | replace_first: 'Dave', 'John' }}
Ieșire
Hello, John. How are you, Dave?
split
Filtrul split preia un subșir ca parametru. Subșirul este folosit ca un separator pentru a împărți un șir dintr-o matrice.
Cod
{% 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: ', ' }}
Ieșire
First word: This
First word: This
Second word: is
Last word: filter
All words: This, is, a, demo, of, the, split, filter
strip_html
Elimină toate etichetele HTML dintr-un șir.
Cod
<p>Hello</p>
Ieșire
Hello
strip_newlines
Elimină orice sfârșituri de linie dintr-un șir.
Cod
{% capture text %}
A
B
C
{% endcapture %}
{{ text | strip_newlines }}
Ieșire
ABC
text_to_html
Formatează un șir de text simplu ca HTML simplu. Tot textul va fi codificat cu HTML, blocurile de text separate de o linie necompletată vor fi încadrate în etichete de paragraf <p>, sfârșiturile de linie unice vor fi înlocuite cu <br> și URL-urile vor fi convertite în hyperlinkuri.
Cod
{{ note.notetext | text_to_html }}
Ieșire
<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
Trunchiază un șir până la un anumit număr de caractere. Punctele de suspensie (...) sunt atribuite șirului, iar șirul este inclus în numărul de caractere.
Cod
{{ 'This is a long run of text.' | truncate: 10 }}
Ieșire
This is...
truncate_words
Trunchiază un șir până la un anumit număr de cuvinte. Se adaugă puncte de suspensie (...) la șirul trunchiat.
Cod
{{ 'This is a long run of text.' | truncate_words: 3 }}
Ieșire
This is a...
upcase
Transformă un șir în litere mari.
Cod
{{ 'MIxed Case TExt' | upcase }}
Ieșire
MIXED CASE TEXT
url_escape
URI-scape pentru un șir, pentru includerea într-un URL.
Cod
{{ 'This & that//' | url_escape }}
Ieșire
This+%26+that%2F%2F
xml_escape
XML-scape pentru un șir, pentru includerea în ieșirea XML.
Cod
{{ '<p>test</p>' | xml_escape }}
Ieșire
<p>test</p>
Filtre Tip
Filtrele Tip vă permit să convertiți valori de un tip la alte tipuri.
boolean
Încearcă să convertească o valoare șir în valoare booleană. Dacă valoarea este booleană, va fi returnată neschimbată. Dacă valoarea nu poate fi convertită la booleană, se va returna null.
Acest filtru va accepta, de asemenea, „activat”, „pornit” sau „da” ca adevărat și „dezactivat”, „oprit” sau „nu” ca fals.
Cod
{{ true | boolean }}
{{ 'false' | boolean }}
{{ 'enabled' | boolean }}
{{ settings['something/enabled'] | boolean | default: false }}
Ieșire
true
false
true
false
decimal
Încearcă să convertească o valoare șir la număr zecimal. Dacă valoarea este deja un număr zecimal, va fi returnată neschimbată. Dacă valoarea nu poate fi convertită la număr zecimal, se va returna null.
Cod
{{ 10.1 | decimal }}
{{ '3.14' | decimal }}
{{ 'text' | decimal | default: 3.14 }}
Ieșire
10.1
3.14
3.14
integer
Încearcă să convertească o valoare șir în număr întreg. Dacă valoarea este deja un număr întreg, va fi returnată neschimbată. Dacă valoarea nu poate fi convertită la număr întreg, se va returna null.
Cod
{{ 10 | integer }}
{{ '10' | integer }}
{{ '10.1' | integer }}
{{ 'text' | integer | default: 2 }}
Ieșire
10
10
2
string
Încearcă să convertească o valoare în reprezentarea șirului său. Dacă valoarea este deja un șir, va fi returnată neschimbată. Dacă valoarea este null, se va returna null.
Filtre URL
Filtrele URL vă permit să construiți sau să extrageți părți din URL-uri.
add_query
Adaugă un parametru șir de interogare la un URL. Dacă parametrul există deja în URL, valoarea parametrului va fi actualizată.
Dacă acest filtru este aplicat la un URL complet absolut, rezultatul va fi un URL absolut actualizat. În cazul în care este aplicat la o cale, o cale de actualizare va fi rezultatul.
Cod
{{ 'https://example.com/path?page=1' | add_query: 'foo', 'bar' }}
{{ '/path?page=1' | add_query: 'page', 2 }}
Ieșire
https://example.com/path?page=1&foo=bar
/path?page=2
base
Obține URL-ul de bază al unui anumit URL.
Cod
{{ 'https://example.com/path?foo=bar&page=2' | base }}
Ieșire
https://example.com
host
Obține partea gazdă a unui URL.
Cod
{{ 'https://example.com/path?foo=bar&page=2' | host }}
Ieșire
example.com
path
Obține partea de cale a unui URL.
Cod
{{ 'https://example.com/path?foo=bar&page=2' | path }}
{{ '/path?foo=bar&page=2' | path }}
Ieșire
/path
/path
path_and_query
Obține calea și partea de interogare a unui URL.
Cod
{{ 'https://example.com/path?foo=bar&page=2' | path_and_query }}
{{ '/path?foo=bar&page=2' | path_and_query }}
Ieșire
/path?foo=bar&page=2
/path?foo=bar&page=2
port
Obține numărul de port al URL-ului.
Cod
{{ '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 }}
Ieșire
80
443
9000
remove_query
Elimină un parametru șir de interogare dintr-un URL. Dacă parametrul nu există în URL, URL-ul va fi returnat neschimbat.
Dacă acest filtru este aplicat la un URL complet absolut, rezultatul va fi un URL absolut actualizat. În cazul în care este aplicat la o cale, o cale de actualizare va fi rezultatul.
Cod
{{ 'https://example.com/path?page=1' | remove_query: 'page' }}
{{ '/path?page=1' | remove_query: 'page' }}
Ieșire
https://example.com/path
/path
scheme
Obține partea de schemă a unui URL.
Cod
{{ 'https://example.com/path?foo=bar&page=2' | scheme }}
{{ 'https://example.com/path?foo=bar&page=2' | scheme }}
Ieșire
http
https
Filtre suplimentare
Aceste filtre oferă funcționalitate generală utilă.
default
Returnează o valoare implicită pentru orice variabilă, fără o valoare atribuită (adică null).
Cod
{{ snippets[Header] | default: 'My Website' }}
Ieșire
<!-- If a snippet with the name Header returns null -->
My Website
file_size
Aplicată la o valoare numerică reprezentând un număr de byți, returnează o dimensiune de fișier formatat cu o unitate de scară corespunzătoare.
Opțional, poate fi trecut un parametru de precizie, pentru a controla numărul de zecimale din rezultat. Precizia implicită este 1.
Cod
{{ 10000000 | file_size }}
{{ 2050 | file_size: 0 }}
{{ entity.notes.first.filesize | file_size: 2 }}
Ieșire
9.5 MB
2 KB
207.14 KB
has_role
Aplicată la un utilizator, returnează adevărat în cazul în care utilizatorul aparține rolului dat. Returnează fals dacă nu.
Cod
{% assign is_admin = user | has_role: 'Administrators' %}
{% if is_admin %}
User is an administrator.
{% endif %}
liquid
Redă un șir drept cod Liquid. Acest cod va avea acces la contextul actual Liquid de execuție (variabile, etc.).
Notă
Acest filtru ar trebui să fie utilizat cu precauție și, în general, ar trebui aplicat numai la valorile aflate sub controlul exclusiv al autorilor conținutului din portal, sau al altor utilizatori care pot fi de încredere pentru a scrie cod Liquid.
Cod
{{ page.adx_copy | liquid }}
Consultați și
Stocați conținutul sursei folosind șabloane web
Înțelegeți operatorii Liquid
Tipuri Liquid
Obiecte Liquid
Etichete Liquid
Filtre Liquid
Notă
Ne puteți spune care preferințele dvs. lingvistice pentru documentație? Răspundeți la un chestionar scurt. (rețineți că acest chestionar este în limba engleză)
Chestionarul va dura aproximativ șapte minute. Nu sunt colectate date personale (angajament de respectare a confidențialității).