Почему каждый из методов запроса в ActiveRecord «клонирует» новый объект? - PullRequest
0 голосов
/ 15 марта 2012

В этом файле https://github.com/rails/rails/blob/master/activerecord/lib/active_record/relation/query_methods.rb, большинство методов имеет следующий код,

relation = clone

и возврат relation. В результате такой запрос,

SomeModel.where(...).select(...).order(...).limit(...)

клонирует 4 новых объекта.

Почему они просто не используют self и возвращают self?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...