2017-11-21 33 views
0

내 Sinatra 애플리케이션에서 작동하도록 sinatra-asset-pipeline을 얻으려고 애로우를 Heroku에 표시하도록 할 수 있습니다. MVC 패턴을 따르고 있으며 현재 자산을 project-folder/assets/stylesheets/application.scss 안에 저장하고 있습니다. 내 config/environment.rb 파일은 모든 보석의 요구 사항을 포함 Sinatra 자산 파이프 라인 gem이 비어있는 .json으로 컴파일

require 'bundler/setup' 
Bundler.require 
require 'sprockets' 
require 'sinatra/activerecord/rake' 
require 'sinatra/asset_pipeline/task' 
require 'sinatra/asset_pipeline' 
require 'sinatra/sprockets-helpers' 
require 'rack-flash' 
require 'sass/plugin/rack' 
require_all 'app' 

내가 내 ApplicationController 내부 시나 자산 파이프 라인 보석을 구성합니다.
require './config/environment' 

class ApplicationController < Sinatra::Base 
    register Sinatra::Sprockets::Helpers 
    register Sinatra::AssetPipeline 
    set :sprockets, Sprockets::Environment.new('app') 
    set :assets_prefix, '/assets' 
    set :digest_assets, true 

    configure do 
    set :public_folder, 'public' 
    set :views, 'app/views' 
    sprockets.append_path File.join('app', 'assets', 'stylesheets') 
    end 

    get '/' do 
    erb :'index' 
    end 

end 

Rakefile 내가 rake assets:precompile --trace를 실행하면 레이크 작업

Sinatra::AssetPipeline::Task.define! ApplicationController 

을 실행하기위한 코드를 포함하고 내가 얻을 :

폴더 /public/assets/.sprockets-manifest-107e377ad857386671d3a9b56a890322.json를 생성
** Invoke assets:precompile (first_time) 
** Execute assets:precompile 

. {}

답변

0

내가 올바른 형식으로 컴파일 내 레이크 작업을 얻기 위해 내 컨트롤러 내부의 asset_precompile을 지정했다 :이 파일은 코드 행이 포함되어 set :assets_precompile, %w(application.css *.png *.jpg *.svg *.eot *.ttf *.woff *.woff2) 나는이 대답은시나 자산과 사투를 벌인 다른 사람을 도울 수 있기를 바랍니다 관로.

class ApplicationController < Sinatra::Base 
    register Sinatra::Sprockets::Helpers 

    set :assets_precompile, %w(application.css *.png *.jpg *.svg *.eot *.ttf *.woff *.woff2) 

    register Sinatra::AssetPipeline 
    set :sprockets, Sprockets::Environment.new('app') 
    set :assets_prefix, '/assets' 
    set :digest_assets, true 

    configure do 
    set :public_folder, 'public' 
    set :views, 'app/views' 
    sprockets.append_path File.join('assets', 'stylesheets') 
    end 

    get '/' do 
    erb :'index' 
    end 

end