いくつかの変数を定義しました:
class App < Sinatra::Base
set :public_folder, relative('public')
set :views, relative('views')
私は両方のモデルからそれらにアクセスしようとしました
options.public_folder
と
settings.public_folder
どちらもモデルの範囲内には存在しないようです。どうすればそれらにアクセスできますか?
実例は次のとおりです。
class App < Sinatra::Base
…
configure do
set :public_folder, File.expand_path(File.join(File.dirname(__FILE__), "public"))
set :root, File.expand_path(File.dirname(__FILE__))
end
…
end
次に、ビューでこの設定にアクセスする方法の例を示します。私の場合、これはHAMLです。
%p= settings.public_folder
%p= settings.root
そしてページは示します:
/Users/sashaegorov/Development/ruby/rvs/public
/Users/sashaegorov/Development/ruby/rvs
これは私のシステムの正しいパスです。
注: File.expand_path()
非常にうまく機能します。ファイルまたはフォルダーへの実際のパスを取得するのに常に役立ちます。__FILE__もここで役立ちます。