Я пытаюсь создать свой первый плагин rails и хочу, чтобы он был настраиваемым, то есть я хочу иметь возможность установить переменную в файле environment.rb или что-то в этом роде.
ОБНОВЛЕНИЕ: я пытаюсь сделать что-то вроде того, что здесь сделано: http://soakedandsoaped.com/articles/read/exception-notifier-ruby-on-rails-plugin. Я пытался имитировать их код, но я не могу заставить его работать.
У меня есть плагин, работающий с жестко запрограммированным значением, но все, что я пробовал до сих пор для его настройки, не работает.
Вот часть кода:
#vendor/plugin/markup/lib/markup_helper.rb
module MarkupHelper
def stylesheet_cache_link_tag(*sources)
cache = assests_cache_dir ? assests_cache_dir : ""
options = sources.extract_options!.stringify_keys
cached_name = options.delete("cached_name")
stylesheet_link_tag(sources, :cache=> File.join(cache, cached_name))
end
def javascript_cache_include_tag(*sources)
cache = assests_cache_dir ? assests_cache_dir : ""
options = sources.extract_options!.stringify_keys
cached_name = options.delete("cached_name")
javascript_include_tag(sources, :cache=> File.join(cache, cached_name))
end
end
#something like the following in config/environment.rb or probably config/environments/production.rb
MarkupConfig.assests_cache_dir = "cache"
Я хочу, чтобы assests_cache_dir по умолчанию был "кэширован", но мог быть установлен в файле конфигурации среды. Я долго гуглял по этому вопросу и не могу найти что-либо, обсуждающее это. Как я могу сделать это?