Sinatra アプリで公開アセットを処理するためにAssetPackを使用しています。アプリはサイトで埋め込み可能な広告として機能するため、css アセットの絶対ルートを宣言する必要があります。これは私の現在のコードです:
require 'rubygems'
require 'sinatra'
require 'rack'
require 'sinatra/assetpack'
class Ads < Sinatra::Application
assets {
css :mybanner, "http://#{request.host_with_port}/css/styling.css", [
"http://#{request.host_with_port}/css/styling.css"
]
}
問題は、呼び出しrequest.host_with_port
時に次のエラーが発生することです
NameError: undefined local variable or method `request' for # <Sinatra::AssetPack::Options:0x007fc1f88b0a80>
なぜ機能しないのかわかりませrequest
ん。何か案が?