Я пытаюсь создать собственный тег шаблона Liquid, например:
class ScriptLoader < Liquid::Tag
def initialize(tag_name, filename, tokens)
super
@file = filename
end
def render(context)
settings.cdn_url << 'script/' << @file
end
end
Liquid::Template.register_tag('script', ScriptLoader)
Приведенный выше код находится во внешнем файле по адресу: (project_dir) /tags/scriptloader.rb
Этот файл включен в файл запуска app.rb.
Проблема, однако, в том, что переменная settings пуста даже после добавления конфигов в файл app.rb с помощью метода set.
Ответ при вызове {% script 'myfile'%} в моих шаблонах:
Liquid error: undefined method `cdn_url' for Sinatra::Application:Class
Любые идеи или рекомендации будут с благодарностью!
Спасибо!