【问题标题】:tradeoff routes and views rails 3权衡路线和景观轨道 3
【发布时间】:2012-04-24 14:31:05
【问题描述】:

这里是 routes.db

resources :licenses  do 
 resources :sublicenses do
  resources :time_licenses
 end
end

然后有一个客户端应用程序调用 time_licenses_controller 来创建新的 time_licenses,控制器以 json 文件响应,但我不需要显示任何视图。

我需要在其他地方向客户显示一个索引文件,其中包括每个子许可证的所有 time_licenses。 这就是路径

license/:id/sublilicense/:id/time_lincenses

现在我的路线有问题。当我在 time_licenses_controller 上调用 create 时,出现此错误:

No route matches "/time_licenses.js"

我可以解决像这样更改 routes.db 文件

resources :time_licenses
resources :licenses  do 
 resources :sublicenses
end

但在这种情况下,我在链接索引视图时遇到同样的错误。

你有什么建议?我必须创建两个不同的控制器吗?

【问题讨论】:

    标签: ruby-on-rails-3 routes


    【解决方案1】:

    由于您使用的是嵌套资源,因此您总是需要在指定时间许可的路径时指定许可和分许可。 您的路径助手将是:

    license_sublicense_timelicense_path(@license, @sublicense, @timelicense) and so on
    

    您可以通过

    获取时间许可的路径名
    rake routes
    

    如有任何疑问,请联系rails guides - nested resources

    【讨论】:

    • 非常感谢,我明白了。唯一烦人的是我的客户必须发送像 /licenses/1/sublicenses/1/time_licenses.js 这样的请求,但最后我不需要所有这些参数。
    猜你喜欢
    • 2017-03-28
    • 1970-01-01
    • 2023-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-21
    • 1970-01-01
    相关资源
    最近更新 更多