我是rails新手。我用控制器products_controller.rb创建了一个演示项目,当我输入这个url http://localhost:3000/products
时,我可以看到数据库中现有产品的列表。但是我需要创建一个名为“display”的新页面,并且我的产品应该显示的网址应该是http://localhost:3000/products/display
。我怎样才能做到这一点?如何显示一个页面的内容到另一个页面的内容
0
A
回答
0
你可能寻找Rails的RESTful routing structure:
每次你在你的routes
文件中使用resources :controller
时间,它创建7 routes for that controller:
- 指数
- 新
- 创建
- 编辑
- 更新
- 显示
- 销毁
对我来说,似乎你试图使用show
方法:
显示
个Rails的show
方法基本上显示在页面上特定的对象,像这样:
/products/234
这显示自身
你的代码这个问题的方法的产品是非常简单的:
#app/controllers/products_controller.rb
def show
@product = Product.find(params[:id])
end
您可以通过以下链接与URL helper:
<%= link_to "View", products_path(product.id) %>
这将允许你展示你点击的产品
1
如果你想使用一个辅助作用,而不只是一个不同的路径索引操作,你需要收集自定义操作:
在你的routes.rb
resources :products do
collection do
get :display
end
end
然后在您products_controller.rb
class ProductsController
def display
@products = Product.all
end
end
,然后创建一个display.html.erb/HAML/...在你的应用程序/视图/产品目录并填写任何你想要的:-)
如果您只是想要一个到索引操作的不同路径,您可以添加一个自定义路径。路由指南解释这更好然后我可以,所以我只是链接到它:http://guides.rubyonrails.org/routing.html
1
我想你只想为产品的索引页面定制一个url。
可以实现在以下way-
在你的routes.rb
get "/products/display" => "products#index"
resources :products
只记得把你的资源自定义路由条目下。
我希望这可以帮助你!
相关问题
- 1. 如何创建两个页面,以便一个页面显示输入到另一个页面的内容?
- 2. 如何在另一个页面中回显一页内容?
- 3. 如何页面内容从另一页
- 4. 制作一个mediawiki页面的内容列表到另一页
- 5. 用另一个替换页面内容
- 6. 添加一个页面的内容到另一个
- 7. 母版页面的内容未显示在内容页面
- 8. 如何在同一页面上显示页面内容
- 9. 显示内容 - 点击同一个php页面内的按钮
- 10. WordPresspress:在另一个页面中包含一页的内容
- 11. 将HTML内容从一个页面提取到另一个页面
- 12. jQuery来获得另一个网站页面内容/ DIV内容
- 13. 显示/隐藏内容从一个页面重定向到另一个
- 14. 在同一页面上显示内容
- 15. 显示页面内容
- 16. 不显示页面内容
- 17. 将一个ASPX页面的内容转换为另一个页面
- 18. 如何在WordPress中将页面内容填充到另一个页面
- 19. 如何将内容页面从另一个xaml页面加载到mainPage?
- 20. 将页面内容加载到一个页面(重复内容)对SEO不利?
- 21. 在另一个页面上显示一个页面的内容,其中有一些ACF字段
- 22. 如何链接从另一个页面的标签内容
- 23. 如何让显示一个页面的内容,但点击一个按钮
- 24. 如何显示wordpress页面内容?
- 25. 如何在新页面上显示当前页面的内容
- 26. 从一个页面加载div内容并将其显示给另一个
- 27. 重定向到另一个页面并更改这些页面的div内容
- 28. 显示在同一页面Ajax内容没有页面加载
- 29. 将内容追加到另一个页面上的div,JQM
- 30. spinner + edittext的内容到另一个页面(textview)(android)