Что означает session[:user_id]
? Вы пытаетесь накатить свою собственную систему аутентификации?
Существует количество решений для аутентификации , которые могут обработать все входы и выходы этого для вас.
Чтобы ответить на ваш вопрос, вы, вероятно, захотите использовать ассоциации , которые вы установили между двумя моделями:
def index
@user = User.find(session[:user_id])
@memberships = @user.memberships if @user
end
Используя систему аутентификации всего приложения (независимо от того, была ли она создана вами или с помощью библиотеки), это, скорее всего, было бы упрощено до:
def index
@memberships = current_user.memberships
end
, где current_user
- это метод, определенный в ApplicationController
, который возвращает текущего вошедшего в систему пользователя, а действие index
имеет before_filter
, который гарантирует, что пользователь вошел в систему.