有没有办法引用我的Sinatra应用程序的根URL?在其中一个观点中说我想做以下事情:
<a href="<%= ROOT_PATH/cats %>">Show all cats</a>
Sinatra是否为ROOT_PATH
提供了一个魔术助手,或者它是等同的?
答案 0 :(得分:3)
应该可以通过request.base_url
rack使用以下方式实现:
def base_url
url = "#{scheme}://#{host}"
url << ":#{port}" if port != DEFAULT_PORTS[scheme]
url
end
答案 1 :(得分:2)
#uri(addr = nil, absolute = true, add_script_name = true) ⇒ Object
也称为:
url
,to
为应用程序中的给定路径生成绝对URI。拿架子 考虑路由器和反向代理。
对于你的例子:
<a href="<%= uri('/cats') %>">Show all cats</a>