Когда использовать расширения ассоциации против именованных областей? - PullRequest
6 голосов
/ 02 февраля 2010

На первый взгляд, это просто два разных подхода к одному и тому же набору проблем, за исключением того, что именованные области являются цепочечными, а расширения ассоциаций - нет.

Может кто-нибудь объяснить более подробно или предоставить пример, который был бы более подходящим для расширения ассоциации, чем именованная область действия?

Ответы [ 2 ]

11 голосов
/ 02 февраля 2010

Расширения ассоциации очень полезны для создания пользовательских методов для создания, обновления и т. Д. (Поиск не обязательно).

Поскольку у вас есть доступ к proxy_owner, proxy_reflection, proxy_target, у вас есть хороший крюк в отношениях.

Ознакомьтесь с разделом Расширение ассоциации документации по Rails:

http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html

0 голосов
/ 02 февраля 2010

Да, вы правы, главное отличие в том, что named_scope являются цепными. Но они в основном выполняют одну и ту же функцию, просто расширение ассоциаций происходит быстрее.

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