Mam obiekty Users oraz Items, używam belongs_to :user oraz has_many :items.
W kontrolerze Item, w metodzie index mam takie coś:
def index
@items = current_user.items.all
end
Dzięki temu user widzi tylko swoje itemy. Chciałbym teraz zrobić tak, żeby user nie tylko mógł widzieć na liście swoje itemy, ale także dla metod show, create, itp. Teraz jest tak, że user mimo, że na liście widzi tylko swoje itemy to poprzez items/1 może zobaczyć dowolny item, oraz go usunąć. Czy aby temu zapobiec muszę zrobić sprawdzanie czy zgadza się user_id w każdej metodzie, czy może da się to zrobić poprzez before_filter albo before_action? Jeżeli tak to w jaki sposób?
Szukałem trochę w google, ale niestety nie znalazłem rozwiązania, albo nie potrzefię sklecić odpowiedniego zapytania.
Właśnie wiem, że można tak zrobić i sprawdzać w każdej metodzie. Pytanie jest, czy można to zrobić dla całego kontrolera przez coś w stylu before_action?