在我的Rails應用普通老式Ruby對象(PORO):我有以下方法:Rails的:建立路由輔助方法可用來PORO
def some_method
content_tag(:li, link_to("Do something", somewhere_path(object.id)))
end
第一:對象不理解的方法content_tag
,所以我增加這使得對象明白,方法如下:
include ActionView::Helpers::TagHelper
然後該對象不明白link_to
所以我增加這使得對象明白,方法如下:
include ActionView::Helpers::UrlHelper
現在,它不明白我的路線:somewhere_path(object.id)
。
問題:如何讓我的Rails應用程序中的PORO理解產生路線的助手?
後續問題:是否有更簡單的方法將所有這些功能都包含到我的PORO對象中?也許有一種方法只有一個主要模塊include
並獲得所有這些功能(而不是可能需要3個不同的模塊)。
'init'?或者你的意思是'初始化'? – tadman
@tadman不,我從字面上理解'init'方法。我在下面回答了我自己的問題,所以你可以看看這個班會是什麼樣子。 – Neil
使用'init'和'initialize'會引起混淆,特別是在其他語言中,'init'是初始化方法的調用方式。 – tadman