Расширение классов с помощью новых методов - PullRequest
0 голосов
/ 27 июля 2011

Я использую Ruby on Rails 3.0.9, и я хотел бы знать, каков наилучший подход \ выбор для расширения моих классов новыми методами. Я планирую реализовать новые методы редактирования строк для выполнения действий, выполненных модулем ActiveSupport::Inflector.

Я подумал создать новый файл для этого в папке lib ... затем, как мне включить этот файл, чтобы можно было вызывать эти методы в моих контроллерах и моделях?

1 Ответ

1 голос
/ 27 июля 2011

Если вы только добавляете методы в класс String, monkey_patch это в файле в / lib:

class String

  def my_method
  end

end

Но если вы хотите добавить другие методы в класс:

  • создать модуль

  • создание методов в модуле

  • включить модуль в свой класс (это миксин)

...