У меня есть два класса, A и B
class A
include Mongoid::Document
has_many :bs, class_name: "B"
end
class B
include Mongoid::Document
belongs_to :a
end
В консоли рельсов я набираю:
a = A.new
и возвращается
=> #<A _id: 5dab1f7780256231d1bb6da8, >
Отлично, это новая запись, так что я знаю априори, что нет б, но когда я набираю:
a.bs
Он запускает запрос монго:
D, [2019-10-19T10:36:41.867215 #12753] DEBUG -- : MONGODB | Topology type 'unknown' initializing.
D, [2019-10-19T10:36:41.875124 #12753] DEBUG -- : MONGODB | Server localhost:27017 initializing.
D, [2019-10-19T10:36:41.878528 #12753] DEBUG -- : MONGODB | Topology type 'unknown' changed to type 'single'.
D, [2019-10-19T10:36:41.879335 #12753] DEBUG -- : MONGODB | Server description for localhost:27017 changed from 'unknown' to 'standalone'.
D, [2019-10-19T10:36:41.880055 #12753] DEBUG -- : MONGODB | There was a change in the members of the 'single' topology.
D, [2019-10-19T10:36:41.881797 #12753] DEBUG -- : MONGODB | localhost:27017 | test_development.find | STARTED | {"find"=>"bs", "filter"=>{"a_id"=>BSON::ObjectId('5dab1f7780256231d1bb6da8')}}
D, [2019-10-19T10:36:41.884234 #12753] DEBUG -- : MONGODB | localhost:27017 | test_development.find | SUCCEEDED | 0.001728129s
Этосводит с ума, есть ли способ предотвратить это? Я делаю это для миллионов записей и запускаю все эти ненужные запросы.
Спасибо за любую помощь, Кевин