2012-04-24 50 views
0

这里是routes.db折衷路线和观点轨3

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

再有就是创建新time_licenses调用time_licenses_controller客户端应用程序,该控制器具有一个JSON文件的响应,但我并不需要显示任何视图。

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

license/:id/sublilicense/:id/time_lincenses 

现在我有一个路由问题。当我打电话的创建time_licenses_controller我得到这个错误:

No route matches "/time_licenses.js" 

,我可以解决改变routes.db文件中像这样

resources :time_licenses 
resources :licenses do 
resources :sublicenses 
end 

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

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

回答

0

由于您使用的是嵌套资源,因此您将始终需要指定许可证和分许可证,同时指定timelicense的路径。 你的路径助手将是:

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

您可以通过

rake routes 

得到了timelicense路径名称是指rails guides - nested resources任何疑虑。

+0

非常感谢,现在我明白了。唯一令人讨厌的是我的客户端必须发送像/licenses/1/sublicenses/1/time_licenses.js这样的请求,但最终我不需要所有这些参数。 – daniel 2012-04-25 08:26:26