我是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)