Я создал несколько пользовательских Liquid фильтров и зарегистрировал их, как показано в Liquid docs .
Я поместил фильтры в файл инициализатора:
# config/initializers/liquid_filters.rb
module MyFilters
def foo(arg)
# Do stuff
end
end
Liquid::Template.register_filter(MyFilters)
Это хорошо работает, так что теперь метод foo
можно визуализировать с помощью шаблона Liquid следующим образом:
{{ "bar" | foo }}
Но, похоже, к методу foo
можно также получить доступ из остальной части моего приложения Rails. Это может быть связано с тем, что я определяю модуль MyFilters
в своем файле инициализатора без каких-либо ограничений.
Как не сделать модуль MyFilters
и его методы доступными вне Liquid?