Я создал файл yml.erb, который будет использоваться для настройки некоторых частей моего приложения.Я хотел бы предварительно загрузить его с инициализатором (мне не нужно менять его во время работы приложения), самая большая проблема заключается в том, что этот файл yml содержит ссылку на изображения, которые находятся в каталоге app / assets / images.Я хотел бы использовать помощник image_path внутри моего файла yml.erb, но у меня возникли проблемы (я не знаю, что мне следует включать и куда его включать: если в файле yml.erb или в файле, который анализируетфайл yml.erb).
Что у меня есть на данный момент
desktop_icons.rb (внутри config / initializer)
require 'yaml'
require 'rails'
include ActionView::Helpers::AssetTagHelper
module ManageFedertrekOrg
class Application < Rails::Application
def desktop_icons
@icons ||= YAML.load(ERB.new(File.read("#{Rails.root}/config/icons.yml.erb")).result)
end
end
end
icons.yml.erb (внутри конфигурации)
-
image: <%= image_path "rails" %>
title: Test this title
home_controller.rb (внутри контроллеров)
class HomeController < ApplicationController
skip_filter :authenticate_user!
def index
@user_is_signed_in = user_signed_in?
respond_to do |format|
format.html { render :layout => false } # index.html.erb
end
end
def icons
result =
{
icons: MyApp::Application.desktop_icons,
success: true,
total: MyApp::Application.desktop_icons.count
}
respond_to do |format|
format.json { render json: result }
end
end
end
Есть предложения?