class Graphiti::Scoping::DefaultFilter

Default filters apply to every request, unless specifically overridden in the request.

Maybe we only want to show active posts:

class PostResource < ApplicationResource
  # ... code ...
  default_filter :active do |scope|
    scope.where(active: true)
  end
end

But if the user is an admin and specifically requests inactive posts:

class PostResource < ApplicationResource
  # ... code ...
  allow_filter :active, if: admin?

  default_filter :active do |scope|
    scope.where(active: true)
  end
end

# Now a GET /posts?filter[active]=false will return inactive posts
# if the user is an admin.

@see Resource.default_filter @see Resource.allow_filter