Я в основном работаю в Rails, и я использую gem для преобразования данных в командной строке, «Mongify», и я сфокусирован на том, как расширить основные классы в приложении Ruby cli.Как расширить класс String в приложении командной строки?
Я хочу расширить класс String с помощью метода .is_date?
, чтобы проверить, может ли строка быть преобразована в Date
. У меня это работает в Rails Console,
Я добавил файл string.rb
на номер lib/ext
со следующим:
class String
def is_date?
begin
return true if Date.parse(self)
rescue
#do nothing
end
return false
end
end
Затем в консоли Rails я делаю require 'ext/string'
и он будет работать. Но я не могу понять, как заставить его работать в приложении Mongify cli. Я скопировал string.rb в папку lib из драгоценного камня, и я попытался добавить require 'string'
в несколько разных файлов в самоцвет, но я продолжаю получать ошибки undefined method
.
Может кто-нибудь указать мне в правильном направлении?
Вы можете использовать запрос в этом файле: https://github.com/anlek/mongify/blob/master/lib/mongify.rb, тогда вы можете приклеить где-нибудь в своем коде, чтобы проверить методы, доступные при запуске время – bjhaid