- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在检查水星编辑器 https://github.com/jejacks0n/mercury小项目。
这些是我的routes.rb 文件
Myapp::Application.routes.draw do
mount Mercury::Engine => '/'
scope '(:locale)' do
resources :post
end
end
我的帖子网址是:
http://localhost:3000/es/posts/1
http://localhost:3000/en/posts/2
http://localhost:3000/de/posts/3
.
.
.
我的水星路线:
Routes for Mercury::Engine:
mercury_editor /editor(/*requested_uri)(.:format) mercury#edit
/mercury/:type/:resource(.:format) mercury#resource
/mercury/snippets/:name/options(.:format) mercury#snippet_options
/mercury/snippets/:name/preview(.:format) mercury#snippet_preview
我正在尝试这样的事情:
<%= link_to 'Edit', "/editor" + request.path %>
但我得到了错误的网址http://localhost:3000/editor/es/posts/2
。
有人能告诉我如何为我的路线添加指定路径吗:
http://localhost:3000/es/editor/posts/1
或 http://localhost:3000/editor/posts/1
最佳答案
替换<%= link_to 'Edit', "/editor" + request.path %>
与
<%= link_to 'Edit', request.path.gsub(/^\/((\w)+)/, '/\1/editor') %>
获取http://localhost:3000/es/editor/posts/1
或者
替换<%= link_to 'Edit', "/editor" + request.path %>
与
<%= link_to 'Edit', request.path.gsub(/^\/((\w)+)/, '/editor') %>
获取http://localhost:3000/editor/posts/1
甚至你可以定义一个辅助方法,如
def mercuryfied_url(with_locale = true)
if with_locale
request.path.gsub(/^\/((\w)+)/, '/\1/editor')
else
request.path.gsub(/^\/((\w)+)/, '/editor')
end
end
然后调用
<%= link_to 'Edit', mercuryfied_url %>
获取http://localhost:3000/es/editor/posts/1
或者
<%= link_to 'Edit', mercuryfied_url(false) %>
获取http://localhost:3000/editor/posts/1
希望有帮助:)
关于jquery - 使用 Mercer Editor + Rails 3 确定路线范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15159833/
我正在检查水星编辑器 https://github.com/jejacks0n/mercury小项目。 这些是我的routes.rb 文件 Myapp::Application.routes.draw
我是一名优秀的程序员,十分优秀!