我們的rails 3.1.0應用程序中有rfqs和quotes控制器。 Rfq有許多報價並引用belongs_to rfq。我們希望列出索引中的所有引號,並且不能使用嵌套資源(資源:rfqs do ...)。現在我們面臨着將rfq id傳遞到new_quote_path的挑戰。什麼是正確的方式來實現這一目標?非常感謝。如何在rails 3.1.0中使用命名路徑傳遞對象?
回答
,你可以在routes.rb中你想要像這樣
match "/rfqs/:id/quotes/:qoute_id" => 'rfq#show'
則控制器添加路徑鏈接到它從你的觀點一樣:
href="/rfqs/<%=rfq.id%>/quotes/<%=qoute.id%>"
,並在控制器
處理它if params[:id] && params[:qoute_id]
@rfq = RFQ.find(params[:id])
@quote = Quote.find(params[:qoute_id])
end
我會管理這不是最優雅的解決方案,但它工作得很好。
+1。有些人似乎認爲他們總是必須使用框架內置的任何東西,但是如果它不能以您想要的方式工作,那麼「自己動手」或者只是做一些非常簡單的事情並沒有錯「啞」。 – 2012-01-31 05:36:53
是否有可能將rfq id傳遞給引用控制器,如下所示:new_quote_path(:rfqid => @ rfq.id)並使用params [:rfqid]檢索引用控制器中的rfqid?謝謝。 – user938363 2012-01-31 16:33:54
你有沒有試過? – 2012-01-31 16:40:20
- 1. 如何在XML命名空間路徑中傳遞通配符(*)?
- 2. 如何訪問通過命名路由傳遞的對象
- 3. 將絕對路徑傳遞給命令
- 4. 在Rails 3路徑中重命名路徑助手
- 5. 使用Javascript更改在rails路徑中傳遞的參數
- 6. 如何在路徑中傳遞變量
- 7. 命名路徑如何在Ruby on Rails中工作?
- 8. 如何在rails 3.1.0中的rspec中檢查更新的對象?
- 9. 如何將路徑對象傳遞給新的活動(Android)
- 10. 的Ruby on傳遞對象命名路由
- 11. Rails的路由錯誤使用命名空間 - 的命名空間路徑
- 12. 如何將params傳遞給Rails路徑中的塊?
- 13. 如何將URL路徑傳遞給Rails中的form_for部分?
- 14. 規範在Rails 3.0.4中傳遞,在3.1.0.rc4中失敗
- 15. 如何使用Spring Framework從類路徑/名稱創建對象?
- 16. 如何在Rails 3中將命名路由替換爲資源路徑?
- 17. 在命令行參數中傳遞應用程序的路徑
- 18. 爲什麼我不能在路徑名對象中使用「mkdir」?
- 19. 命名RESTful路徑
- 20. 在Rebol中如何獲取對象路徑名(字符串)?
- 21. 如何在selenium webdriver中使用相對路徑上傳文件
- 22. 命名路由與對象
- 23. 什麼是傳遞路徑參數在角2 HTTP對象
- 24. 在Rebol中如何獲取對象路徑中的父對象?
- 25. 如何將一個「路徑」傳遞給C#中的對象成員?
- 26. 如何將大數組傳遞給Rails路徑?
- 27. 使用Segue傳遞對象
- 28. 如何在Python中傳遞對象作爲命令行參數?
- 29. 使用didSelectRowAtIndexPath傳遞對象:
- 30. 如何在使用Rails 3的資源路徑中使用不可數名詞?
你可以舉一些你之後的路由結構的例子嗎?爲什麼你不能使用嵌套資源?看起來像你之後的解決方案 – 2012-01-31 05:19:23
如果使用嵌套資源,比如資源:rfq do resources:引用結束,那麼index不能列出所有引號,只能引用特定rfq的引號。 – user938363 2012-01-31 16:01:56