Files
once-campfire/app/controllers/concerns/room_scoped.rb
T

17 lines
430 B
Ruby

module RoomScoped
extend ActiveSupport::Concern
included do
before_action :set_room
end
private
def set_room
@membership, @room = RecordCache.fetch([ "membership", Current.user.id, params[:room_id] ], read_record_cache_version) do
membership = Current.user.memberships.find_by!(room_id: params[:room_id])
[ membership, membership.room ]
end
@membership.room = @room
end
end