Odwołanie do logiki warunkowej dla szablonów
Czego się dowiesz?
Dowiedz się więcej o wszystkich dostępnych warunkach, których możesz użyć do dynamicznego wyświetlania bloku, sekcji lub niestandardowo zakodowanego fragmentu treści tylko wybranym odbiorcom. Aby dowiedzieć się, jak używać tych warunków w swoich szablonach, przejdź do naszego artykułu na temat wyświetlania lub ukrywania bloków szablonu na podstawie zmiennych dynamicznych.
Dowiedz się, jak korzystać z logiki warunkowej:
Gdzie można używać warunków
Możesz używać warunków w:
- E-maile
- Utwórz logikę pokazywania/ukrywania, aby dynamicznie wyświetlać bloki lub sekcje tylko określonym osobom.
- Jeśli wolisz nie pisać kodu, zamiast tego użyj konstruktora logiki pokaż/ukryj.
- Pisz warunki if/else, aby tworzyć niestandardowe instrukcje Django.
- Utwórz logikę pokazywania/ukrywania, aby dynamicznie wyświetlać bloki lub sekcje tylko określonym osobom.
- Customer Hub
- Pisz warunki if/else, aby tworzyć niestandardowe instrukcje Django w blokach treści
Wskazówki, jak osiągnąć sukces
Podczas tworzenia warunków pokazywania/ukrywania zwracaj uwagę na szczegóły. W warunkach pokazywania/ukrywania wielkość liter ma znaczenie, a pisownia musi dokładnie odpowiadać danym w profilu lub danym zdarzenia.
Pamiętaj też, aby wziąć pod uwagę wszystkich możliwych odbiorców. Na przykład, jeśli wyświetlasz określony blok tylko mieszkańcom danego stanu, uwzględnij wszystkie możliwe sposoby zapisu nazwy tego stanu (np. Massachusetts, massachusetts, mass, MA). Weź też pod uwagę profile, które mogą w ogóle nie mieć ustawionej tej właściwości.
Gdy utworzysz wiadomość i zastosujesz warunki, sprawdź podgląd, używając różnych profili, aby potwierdzić, że wiadomość wyświetla się zgodnie z zamierzeniami we wszystkich scenariuszach.
Struktury warunków
Warunki powinny zawierać 1–3 elementy, w zależności od celu bloku i danych, których używasz. Warunek musi zawierać co najmniej jedną zmienną (np. person|lookup:'Favorite Color'). Może też zawierać funkcję porównania, np. = (równa się) lub > (większe niż), oraz wartość, która określa wartość właściwości, jakiej należy szukać. Dodatkowo niektóre warunki zaczynają się od not, jeśli chcesz, aby blok pojawiał się tylko w przypadku profili, które nie spełniają warunku.
Poniższy wykres zawiera pełną listę możliwych struktur, jakie może mieć warunek pokaż/ukryj.
Przykładowy warunek | Pokaż blok, jeśli... | Dopuszczalne typy danych |
person|lookup:'Ulubiony kolor' | Właściwość | Dowolne |
nie osoba|lookup:'Ulubiony kolor' | Właściwość | Dowolne |
person|lookup:'Ulubiony kolor' == 'zielony' | Właściwość | Tekst, liczba |
person|lookup:'Ulubiony kolor' != 'zielony' | Właściwość | Tekst, liczba |
person|lookup:'Age' > 20 | Właściwość | Liczba |
person|lookup:'Age' >= 20 | Właściwość | Liczba |
person|lookup:'Age' < 20 | Właściwość | Liczba |
person|lookup:'Wiek' <= 20 | Właściwość | Liczba |
„green” w person|lookup:'Ulubione kolory' | Właściwość Właściwość | Lista, Tekst |
nie „zielony” osobiście|lookup:'Ulubione kolory' | Właściwość Właściwość | Lista, Tekst |
Warunki dla wartości logicznych
Jeśli odwołujesz się do danych przechowywanych jako wartość logiczna, musisz użyć 1 i 0 zamiast „true” i „false” w definicji warunku pokazuj/ukryj. Nie ujmuj 1 ani 0 w cudzysłów. Użyj poniższych przykładowych warunków jako szablonu.
Przykładowy warunek | Pokaż blok, jeśli... |
person|lookup:'VIP' == 1 | Właściwość |
person|lookup:'VIP' == 0 | Właściwość |
Warunki dla wartości logicznych przechowywanych jako tekst
Jeśli dane true/false są przechowywane jako tekst, a nie jako wartość logiczna, użyj przykładowych warunków dla właściwości tekstowych powyżej. Jeśli nie masz pewności lub odwołujesz się do właściwości, która zawiera zarówno wartości logiczne, jak i tekst, możesz użyć tych struktur, aby objąć wszystkie scenariusze. Uwzględnij wszystkie pisownie i wielkie litery, które występują w danych.
Przykładowy warunek | Pokaż blok, jeśli... |
person|lookup:'VIP' == 1 or person|lookup:'VIP' == 'true' or person|lookup:'VIP' == 'True' | Właściwość |
person|lookup:'VIP' == 0 or person|lookup:'VIP' == 'false' or person|lookup:'VIP' == 'False' | Właściwość |
Twórz złożone warunki
Jeśli chcesz, aby blok wyświetlał się osobom spełniającym wiele kryteriów lub masz złożony przypadek użycia, możesz zastosować wiele warunków pokaż/ukryj dla jednego bloku. Aby to zrobić, połącz serię warunków za pomocą operatorów AND lub OR. Na przykład, jeśli chcesz wyświetlać blok każdej osobie w Massachusetts, ale na niektórych profilach Massachusetts jest zapisane inaczej, możesz użyć warunku takiego jak ten:
person.location.region == 'Massachusetts' or person.location.region == 'massachusetts' or person.location.region == 'mass' or person.location.region == 'MA'
Jeśli chcesz wyświetlać blok tylko osobom, których ulubionym kolorem jest zielony i które są również VIP-ami, możesz użyć warunku takiego jak ten:
person|lookup:'Favorite Color' == 'green' and person|lookup:'VIP'== 1
Instrukcje warunkowe a wbudowany edytor tekstu
Po dodaniu do bloku tekstowego określonych instrukcji warunkowych mogą one zniknąć z wbudowanego edytora tekstu. Kod nadal będzie obecny – po prostu pozostanie ukryty. Aby wyświetlać i edytować instrukcje warunkowe, użyj narzędzia Django Tag Builder lub przenieś treść do dedykowanego bloku HTML, aby edytować kod bezpośrednio.
Poniższe znaczniki nie pojawiają się w edytorze tekstu wstawianego, ale pozostają w bloku tekstu:
- {% for ... %}
- {% endfor %}
- {% if ... %}
- {% elif ... %}
- {% else %}
- {% endif %}
- {% with ... %}
- {% endwith %}