2011-12-20 37 views
2

我在写我自己的红宝石宝石,我必须使用url_for ActionView方法。我只是想知道如何在我的创业板中使用该方法与我的Rails应用程序中定义的路线,通过向该方法发送控制器,动作(等)参数来生成url路径。如何在我自己的宝石中使用url_for方法

回答

2

一个简单的方法是在需要时将视图对象从应用程序传递到您的宝石方法。

例如模板,您的应用程序可能会说:

<%= some_gem_method(self) %> 

和创业板可以实现类似的方法:

def some_gem_method view 
    view.url_for controller: "widgets", action: "show" 
end 
+0

注意,所有网址助手也模块'Rails.application可用.routes.url_helpers',如果你需要去依赖查找而不是依赖注入;)依赖注入通常更适合于测试目的。 – d11wtq 2011-12-20 13:16:37

相关问题