Подтвердить что ты не робот

Обезьяна патч в Rails 3

Каков предпочтительный способ для Monkey Patch в Rails 3?

Я просто хочу добавить метод в класс String. Я больше смотрю, где разместить файл.

4b9b3361

Ответ 1

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

Итак, попробуйте /config/initializers/string_extension.rb или /config/initializers/extensions/string.rb или что-то подобное. В любом случае, вы можете просто забыть о них позже - Rails потребует их для вас, поэтому вам не нужно делать это самостоятельно.

Ответ 2

Если это специфично для класса, вы можете просто переопределить метод в классе, в котором вы нуждаетесь. В противном случае это полностью зависит от того, какую часть приложения вы хотите использовать своим строковым методом. В качестве примера открытия класса для переопределения метода: http://codepad.org/Cj1LHmQj но, возможно, вы уже знали, что можете это сделать.