首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >( Rails)在routes.rb中构建URL

( Rails)在routes.rb中构建URL
EN

Stack Overflow用户
提问于 2017-04-21 10:54:29
回答 2查看 90关注 0票数 0

我对Rails不熟悉,所以请容忍我在这里。我正在尝试构建以下URL:

代码语言:javascript
运行
复制
localhost:3000/products/toyota

因此,主页(本地运行项目时的localhost:3000)和产品页面(localhost:3000/ products )已经存在,但我正在尝试创建一个丰田页面(localhost:3000/products/ toyota )。丰田页面有自己的视图(haml页面/javascript),独立于产品页面。

所以,我在config/rouderes.rb中尝试了这一点。

代码语言:javascript
运行
复制
get 'toyota', to: 'static#products#toyota'

但是toyota_url把我带到了本地:3000/丰田,而不是本地:3000/products/丰田。

有什么办法解决这个问题吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-21 11:05:11

你需要这个代替

代码语言:javascript
运行
复制
get '/products/toyota', to: 'static#products#toyota', as: 'toyota'

希望这能帮上忙!

票数 1
EN

Stack Overflow用户

发布于 2017-04-21 11:13:06

如注释中所述:它是get 'my/full/path', to: ....,所以请尝试get 'products/toyota', to: 'static#products#toyota', :as => 'toyota'

但我建议如下。为了保持它的灵活性,我假设您还会有其他供应商/产品,创建一个操作:

路由:

代码语言:javascript
运行
复制
get 'products/:vendor', to: 'products#vendor'

主计长:

代码语言:javascript
运行
复制
def vendor(id)
   @car_or_whatever = Product.find_by(....)     
end

查看:

代码语言:javascript
运行
复制
# file views/products/vendor.html.erb
<some fancy html>
   @car_or_whatever.name

   ... etc

来自文档:http://guides.rubyonrails.org/routing.html#generating-paths-and-urls-from-code

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43540875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档