Как использовать плагины в папке vendor вместо гемов в рельсах? - PullRequest
0 голосов
/ 13 ноября 2011

У меня есть сценарий, где мне нужно изменить определенные функции в моем плагине.Поэтому я подумал, что могу изменить файлы в папке vendor/plugins/.Но потом я понял, что мой установленный код драгоценных камней был использован rails вместо vendor/plugins/.Я думал об удалении драгоценного камня из моего gemlist, но это выдает ошибку.Итак, как я могу перенаправить мои рельсы для использования плагинов в папке vendor/plugins/ вместо моих драгоценных камней?

Ответы [ 2 ]

3 голосов
/ 13 ноября 2011

Попробуйте, в соответствии с документация о комплектации :

gem [gem name], :path => [path]

Пример:

gem "rails", :path => "vendor/rails"
0 голосов
/ 13 ноября 2011

Попробуйте внести исправления обезьяны вместо непосредственного изменения плагинов / гемов. Я обезьяна исправляю их в папке lib / и config.auto_load в моей среде. Это не так уж плохо, просто убедитесь, что он находится в тех же модулях и имеет то же имя метода. Например, чтобы переопределить строковый метод, вы можете сделать что-то вроде:

class String
  def method_to_override
    do_something
    super # if you want to still use the original method
  end
end

Я рекомендую избегать прямого изменения чего-либо напрямую.

Кроме того, если я использую объединенные гемы, я обычно связываю команду exec, но я думаю, что она по-прежнему загружает гемы с пути, который я выбрал. В последнее время я редко использовал плагины.

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