我有一个sinatra登陆页面。服务器从根文件夹中的执行index.rb
开始。
例如:
get '/en' do
I18n.locale = 'en'
erb :index, locals: {langswitch: "/ru", current_locale: "en"}
end
呈现index.erb
并且运作良好。
此页面包含:
<link rel="stylesheet" type="text/css" href="index.css">
如果我打开此链接,它会指向http://0.0.0.0:9292/index.css
,检索css文件并按预期呈现页面。
然而,还有
get '/agreement/en' do
I18n.locale = 'en'
erb :agreement, locals: {langswitch: "/ru", current_locale: "en"}
end
如果我从此页面访问相同的链接,则会转到http://0.0.0.0:9292/agreement/bootstrap.css
,而不是http://0.0.0.0:9292/index.css
,并且无法检索文件。
与我的所有图片,其他css文件相同。
答案 0 :(得分:2)
首先,您需要将所有资源放在公用文件夹中。然后你需要修改
<link rel="stylesheet" type="text/css" href="index.css">
至
<link rel="stylesheet" type="text/css" href="/index.css">
。
所以你需要做的就是在/
index.css