diff --git a/lib/searchkick/relation.rb b/lib/searchkick/relation.rb index 5c6bbf1..ee00f27 100644 --- a/lib/searchkick/relation.rb +++ b/lib/searchkick/relation.rb @@ -363,6 +363,15 @@ module Searchkick self end + def type(*args) + spawn.type!(*args) + end + + def type!(*args) + options[:type] = Array(options[:type]) + args.flatten + self + end + # same as Active Record def inspect entries = results.first(11).map!(&:inspect) diff --git a/test/inheritance_test.rb b/test/inheritance_test.rb index 9bcc78c..15d7e33 100644 --- a/test/inheritance_test.rb +++ b/test/inheritance_test.rb @@ -32,6 +32,7 @@ class InheritanceTest < Minitest::Test store_names ["Green Bear"], Dog store_names ["Blue Bear"], Cat assert_equal ["Blue Bear"], Animal.search("bear", type: [Cat]).map(&:name) + assert_equal ["Blue Bear"], Animal.search("bear", relation: true).type(Cat).map(&:name) end def test_force_multiple_types -- libgit2 0.21.0