Rails引擎RouteProxy在View和Controller之外

时间:2012-05-14 14:01:14

标签: ruby-on-rails ruby ruby-on-rails-3 routes rails-engines

我正在尝试在一个专为不安全的代码评估而设计的类中评估路由助手字符串。基本上我有一个SafeEval类,它将在沙盒类中评估字符串。我做了以下工作以获得在SafeEval中工作的路线助手

include ActionController::UrlFor
include Rails.application.routes.url_helpers

除引擎路径代理外,所有ruote助手都在工作。在我的视图和控制器中,我可以调用blog.page_path(@page),但我不能在SafeEval中调用blog.page_path - 我没有定义博客。我查看了我的观点,博客是RouteProxy。

所以我的问题是如何在视图/控制器外的类中获取引擎路由代理

(SafeEvla没有做很多沙盒。你可以假设非常简单的结构:一个在SafeEval类中只运行eval(str)的方法。)

1 个答案:

答案 0 :(得分:0)

我认为在您的班级中加入已安装的助手将解决问题:

Properties