Filtrowanie w węźle, którego identyfikator użytkownika jest równy bieżącemu użytkownikowi


19

W Drupal 6 możesz mieć filtr node.uid = current user. Jak to robisz w Drupal 7?

Odpowiedzi:


23

Musisz dodać filtr jako „kontekst” (zaawansowany), w którym możesz podać domyślny argument. Jeśli kontekst jest dla użytkownika, takiego jak autor węzła, możesz wybrać takie rzeczy, jak identyfikator zalogowanego użytkownika.

Zrzut ekranu


1
Zawsze korzystałem z relacji, ale przyjrzę się również kontekstom. Widok jest niesamowity.
Citricguy,

Będzie modyfikować około 100 widoków. :) Dziękuję za szczegóły @googletorp.
Citricguy,

1
widzisz pierwszy wiersz tekstu w filtrze kontekstowym? „Gdy wartości filtru nie ma w adresie URL”, próbowałem już tego i działa to, jeśli adres URL nie zawiera identyfikatora użytkownika, ale jeśli użytkownik a patrzy na jakiś profil użytkownika b, ten widok będzie używał użytkowników b nie
jestem

20

Musisz edytować widok, przejść do kolumny Zaawansowane (po prawej stronie) i dodać nową relację.

Dodaj związek

Konieczne będzie dodanie relacji „Treść: Autor”.

Następnie w sekcji „Filtry” należy dodać filtr „Użytkownik: bieżący”.

Dodaj filtr

Teraz powinno być możliwe filtrowanie treści należących do aktualnie zalogowanego użytkownika.


1
Podczas tej pracy jest to wolniejsze niż przy użyciu filtrów kontekstowych, ponieważ musisz utworzyć złączenie. To prawdopodobnie tylko kilka ms wolniej, ale nie ma powodu do marnowania zasobów.
googletorp

Pozwoli to zaoszczędzić znacznie więcej niż kilka ms na wielu moich zapytaniach. :) Dziękuję za wyjaśnienie.
Citricguy,

-2

możesz po prostu dodać

„Użytkownik: bieżący” w kryterium „Filtr”.


Brak wystarczających wyjaśnień, aby ludzie mogli naśladować
Ben
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.