2010-06-18 24 views
0

我想要做的很简单:根据控制器动作定义的角色生成权限列表。Rails的possible_controllers问题

这工作得很好,唯一的问题是,当我尝试生成轨道控制器列表中的第二次

ActionController::Routing.possible_controllers 

我得到一个数组:使用(注意第一次完美的作品)当前控制器类而不是字符串,就像我第一次得到的那样,不用说,这会通过生成异常来破坏我的代码。

为什么此方法在多次调用中的作用不同?这是我错过的东西,还是ruby/rails错误? (我在windows上运行)

临时修订:我将结果字符串数组存储在会话中,以便下次从那里检索列表时不再调用possible_controllers方法。

但是,当用户注销并且新登录时,问题会再次出现,这对生产无效,这意味着我需要关闭它。

+0

我创建了一个虚拟导轨项目,并在控制台中发出了您提及的调用。我始终得到一串字符串。我在Linux上使用Ruby 1.8.7和Rails 2.3.5。这不是一个解决方案,但它可能有助于指向正确的方向。 – Roadmaster 2010-06-18 15:21:14

+0

我在控制台中得到相同的东西。我会尝试将它部署在Linux主机上,也许它的平台依赖于它 – dakull 2010-06-18 15:24:16

回答

0

文档说它应该返回一个数组。所以我建议你编写你的代码来处理数组版本,然后插入一个虚拟调用来摆脱字符串版本,如果你有报告,你可能也会发现一个错误。