it will be easier to answer if you put your models in question but in general way if you have has_many relationship than you should index nested model
#variant model
searchable do
integer :product_id
time :check_in
time :check_out
end
if you need to index something from parent has_many
model you can use :multiple=>true
option in this way
#product model
def variant_ids
variants.collect(&:id)
end
searchable do
integer :variant_ids, :multiple=>true
...
end