Dostęp do current_user z modelu w Ruby on Rails

Muszę zaimplementować precyzyjną kontrolę dostępu w aplikacji Ruby on Rails. Uprawnienia dla poszczególnych użytkowników są zapisywane w tabeli bazy danych i pomyślałem, że najlepiej byłoby pozwolić odpowiedniemu zasobowi (tj. Instancji modelu) zdecydować, czy dany użytkownik może odczytywać lub zapisywać go. Podejmowanie tej decyzji w kontrolerze za każdym razem z pewnością nie byłoby bardzo OSUSZONE.
Problem polega na tym, że aby to zrobić, model potrzebuje dostępu do bieżącego użytkownika, aby wywołać coś takiego<code>may_read</code>?(<code>current_user</code>, <code>attribute_name</code>). Ogólnie jednak modele nie mają dostępu do danych sesji.

Istnieje kilka sugestii, aby zapisać odwołanie do bieżącego użytkownika w bieżącym wątku, np. wten wpis na blogu. Z pewnością rozwiązałoby to problem.

Sąsiednie wyniki Google zaleciły mi zapisanie odniesienia do bieżącego użytkownika w klasie User, co, jak sądzę, zostało wymyślone przez kogoś, kto nie musi obsługiwać wielu użytkowników naraz. ;)

Krótko mówiąc, mam wrażenie, że moje życzenie dostępu do bieżącego użytkownika (tj. Danych sesji) z modelu pochodzi ode mnierobić coś źle.

Czy możesz mi powiedzieć, jak się mylę?

questionAnswers(10)

yourAnswerToTheQuestion