Jak przekazać filtr kontekstowy Widoki przez URL?


18

Chcę przekazać niektóre wartości do mojego widoku za pomocą filtrów kontekstowych w adresie URL. Z jakich GET naImes korzystam? Wydaje się, że nie ma żadnych wskazówek, tylko to „Wartości filtru kontekstowego są dostarczane przez adres URL”.

Jeśli muszę skonstruować ten adres URL, jak mogę dowiedzieć się, jakie nazwy GET var muszę przekazać, aby zostały rozpoznane?

Odpowiedzi:


13

Filtry kontekstowe nie są przekazywane w osobnych zmiennych, są częścią ścieżki. Jeśli ścieżka widoku to xxx / rrr, to aby mieć wartość filtru nn, ścieżka to xxx / rrr / nn.


1
+1. a ta kolejność xxx / rrr jest taka sama, jak widać w okienku „Filtry kontekstowe” w interfejsie użytkownika Widok.
AyeshK

12

Użyj Podaj wartość domyślną w filtrze kontekstowym.

filtr kontekstowy

możesz także użyć kodu php do uzyskania wartości z adresu URL

wprowadź opis zdjęcia tutaj


1
Czy masz jakiś przykład kodu PHP, którego można użyć? Dzięki!
petergus

Jest to związane z tym polem. Na przykład: - Czy jest to zatem pole liczbowe - zwraca 1; lub zwróć $ user-> uid; itp ... zadziała.
Sibiraj PR

Czy te opcje są dostępne, gdy wartość nie znajduje się w adresie URL? Jak będzie mierzyć wartość wysyłaną jako parametr?
pal4life

Nigdy nie jest dobrą praktyką mieć kod PHP w bazie danych, zawsze rób kod w plikach i zapisuj go w systemie weryfikacji kodu
lslinnet

5

Jeśli chcesz przekazać argumenty przez GET w adresie URL, możesz do tego użyć modułu BEF .

Na przykład: mydomain.com/your-view-path?field_a=valuea&field_b=valueb

W przypadku Better Exposed Filters musisz dodać filtry narażone (nie filtr kontekstowy), zaznacz opcję ujawnienia tego filtru, a nazwa zmiennej GET znajduje się poniżej w więcej opcji. Następnie, jeśli nie chcesz pokazywać filtra, możesz go ukryć w Ustawieniach lepszych filtrów narażonych.

Nie zapomnij włączyć opcji Użyj Ajax, jeśli widok jest blokowy.

Ustawienie stylu odsłoniętego filtra należy ustawić na Lepsze naświetlone filtry zamiast Podstawowego.

Jest to bardzo przydatne w przypadku bloków widoków.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.