我想创建一个检查工具/ rake任务,它将动态地遍历可能从外部访问的所有公共方法并检查我们的授权规则。
为此,我需要收集所有控制器及其所有公共方法。怎么做?我想使用Ruby反射或元数据技术而不是grepping文件。
答案 0 :(得分:2)
AFAICT在一般情况下这是不可能的,因为你无法分辨哪些参数在哪里,例如/items/foo/id
或/items/foo?bar=baz
?那么,参数的哪些值可以吗?
但是你可以用
获得一个不错的价值Rails.application.routes.routes.map(&:path)
将以rake路线(/klass/:id/action(.:format)
)