Как отмечает еще один Geek, Rails (ActiveRecord) не загружает объекты отношений по умолчанию.Скорее, он идет и получает их, когда вы просите их.Если вам не нужны объекты этих отношений, он никогда не будет загружать их, экономя время базы данных.
Если вам нужно, то он будет извлекать их лениво (по умолчанию).Если вы знаете, что вам понадобятся все (или многие) объекты отношений (при условии x-ко-многим), то вы можете использовать модификатор :include
для вашего find
, чтобы получить их все сразу (что будетбыть намного быстрее, так как он может сделать это с помощью одного вызова БД).Знание и возможность воспользоваться способностью загружать объекты отношений - важная вещь.
@person = Person.find(params[:id], :include => :friends)
Все это говорит о том, что вам нужно поведение (не загружать объекты, если они вам не нужны)поведение по умолчанию, и вы должны быть все в порядке.Остальная часть ответа была просто контекстом, который может пригодиться вам позже.