Skip to content

Instantly share code, notes, and snippets.

@mitchlloyd
Created March 22, 2014 18:05
Show Gist options
  • Save mitchlloyd/9711620 to your computer and use it in GitHub Desktop.
Save mitchlloyd/9711620 to your computer and use it in GitHub Desktop.
# Before
def show
if current_user.is_admin?
if params[:assignment].nil?
@assignments = Assignment.all
else
@assignments = Assignment.where(:student_id => params[:assignment][:id] )
end
else
@assignments = Assignment.where(:student_id => current_user.id )
end
end
# After
def show
@assignments = current_user.viewable_assignments
if params[:assignment]
@assignments = @assignments.where(student_id: paramsp:assignment][:id])
end
end
# In model
def viewable_assignments
is_admin? ? Assignment.all : assignments
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment