Как я могу управлять дубликатами методов для нескольких моделей? - PullRequest
0 голосов
/ 24 июня 2011

Например, я хотел бы иметь имя метода 'owner', которое возвращает владельца статьи или комментарий к двум моделям, Article и Comment. Вместо добавления

def owner
    user
end

для каждой модели, есть ли способ управлять несколькими моделями одним методом?

1 Ответ

1 голос
/ 24 июня 2011

Есть несколько способов справиться с этим:

  1. включает модуль, содержащий метод, в каждой модели

  2. добавить метод экземпляра вActiveRecord База

  3. добавить method_missing, который более или менее тот же принцип, что и выше, но немного более хакерский

Плюсы1 означает, что метод включает только ту модель, которую вы хотите, но вам нужно включить строку ...

Плюсы 2 и 3 заключаются в том, что вам не нужно включать модуль, но каждыйМодель будет иметь его, даже если он не актуален.

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