Permalink
Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
39 lines (33 sloc) 2.99 KB
Гем представляет собой набор полезных инструменов для повседневной работы (пока только на русском)
1.Configuration
Загрузка конфигурационных файлов в окружение Configuration из папки RAILS_ROOT/config/project(по умолчанию).
Для каждого найденного yaml файла в папке project мы производим загрузку в окружение. Все это делается
в целях удобства обращения к конфигурации. Доступ к конфигам из проекта - Configuration.НАЗВАНИЕ_ФАЙЛА.КЛЮЧ.
2. Расширение классов стандартной библиотеки
а) Расширение классов Array и Hash
метод deep_clone - выполняется рекурсивное клонирование всех элементов.
б) Расширение модуля Kernel
метод with - Переключение области видимости на объект.Использовать осторожно. Рекомендуется применять,
когда в коде идет несколько операций над одним объектом. Таким образом следующий код:
contexts.set_context(:region, :volga)
contexts.set_context(:site, "gionet.ru")
contexts.set_context(:special, special_object)
contexts.run
можно преобразовать в следующий:
with contexts do
set_context(:region, :volga)
set_context(:site, "gionet.ru")
set_context(:special, special_object)
run
end
в) расширения класса String
1) метод to_json_with_russian_support - Если вызывать у строки с русским текстом стандартный метод to_json, а потом попробовать отобразить ее
то получится что то невразумительное.Данный метод исправляет проблему. Пример
"тут русский текст".to_json(:russian=>true). По умолчанию russian == false
2) json? - Проверка,является ли строка JSON'ом
3. Класс EventMachine
Класс служит для подписывания на события и выполнения кода по выполнении этих событий.
Пример с подписыванием на событие after_initialize можно посмотреть helpful_utils.rb
4. Другие утилиты для падчинга можно посмотреть в helpful_utils\patching_utils
5. Кастомные названия для полей моделей(по мотивам
http://rubybrothers.ru/2008/9/9/custom-attributes-names-for-rails-validations)