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.