视图中的URL操作

时间:2012-11-15 14:08:17

标签: ruby-on-rails ruby ruby-on-rails-3

我有一个生成URL的代码,如下所示:#{URI.escape p.url(checkout_path)}

现在我需要检查一个条件,如果#{URI.escape p.url(checkout_path)}生成一个URL =“http://mywebsite.com”,那么将/ trunk添加到末尾,所以它必须是“http://mywebsite.com / trunk“如果它之前已经附加了/ trunk,那么它应该是”http://mywebsite.com“。

最后,如果http://mywebsite.com然后http://mywebsite.com/trunk

ELSIF

http://mywebsite.com/trunk然后http://mywebsite.com

但我想知道如何使用#{URI.escape p.url(checkout_path)}

来做到这一点

1 个答案:

答案 0 :(得分:1)

我会把它放在某个地方的辅助方法中,但你可以有效地做这样的事情:

 URI.escape(p.url(checkout_path)) =~ /\/trunk$/ ? URI.escape(p.url(checkout_path)).gsub('/trunk', '') : "#{URI.escape(p.url(checkout_path))}/trunk"