Как ruby ​​на рельсах динамически определяет методы `find_by_id`,` find_by_name`? - PullRequest
0 голосов
/ 02 ноября 2018

Мне интересно понять, как работает find_by_(column_name). Как Ruby on Rails динамически определяет метод вызова find_by_id, find_by_name и т. Д.?

1 Ответ

0 голосов
/ 02 ноября 2018

Это сила метапрограммирования в Ruby, а точнее метод method_missing: https://ruby -doc.org / core-2.1.0 / BasicObject.html # method-i-method_missing

Когда вы вызываете метод для экземпляра класса, который не определен в этом классе, method_missing ловит его, и вы можете обработать его там.

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