2012-05-11 51 views
0

我創建了一個Foo控制器,而Foo視圖允許用戶輸入並提交一個URL。在我的Foo助手中,我有一個代碼塊,用於擦除用戶輸入的URL(使用nokogiri)。我如何將從用戶接收到的URL傳遞給幫助器,以便可以解析URL並將其保存到數據庫中?我應該以不同的方式設置嗎?在Rails 3中歸檔此傳遞一個URL以幫助方法進行編碼。

+0

助手是用於查看邏輯。有沒有理由把代碼放在幫助器中,而不是控制器或單獨的模塊/類?如果不是,那麼是的,你可能應該設置不同。 – numbers1311407

回答

0

一種方法是調用view_context的 控制器內創建一個新的實例的ActionView爲控制器,然後 所有的輔助方法,將可以通過這個實例中 控制器。

view_context.scrape_url_method_in_helper 

或者在FooController的

include FooHelper 

同樣做到這一點,請閱讀下面rik.vanmechelen的評論。

+1

的確如此,但也許他不應該將其作爲輔助方法,而應該將其放在控制器中,或者放在lib目錄中並需要該文件。 –