2010-02-11 48 views
0

我有一個擴展Erubis(一個紅寶石模板引擎)的ruby類,我想創建自己的標籤。以下是我想要重現的示例:用Erubis創建你自己的標籤/函數

<%= link_to "/some/url" %> 

此代碼應該生成鏈接到某個url的html'a'標記。現在我想能夠創建我自己的標籤,如:

<%= javascript_file "/some/javascript/file" %> 

這將生成一個腳本標記鏈接到我選擇的一些JavaScript文件。

我該如何輕鬆擴展erubis來做到這一點?

謝謝你的時間。

回答

1

這些只是作用在一個字符串返回標籤電話:

def javascript_file(file_path) 
    "<script src=\"#{ file_path }\" type=\"text/javascript\"/>" 
end 

你只需要確保職能範圍內的調用結合的時間。

+0

我今天早上才意識到我的問題來自於使用Erubis的evaluate()函數。使用binding()解決了這個問題。 – Benjamin 2010-02-11 23:21:00