2010-05-21 20 views
1

基本上,我試圖在我的Ruby on Rails應用程序中將外部網站(其存儲在數據庫中的網址)渲染到頁面中。如何在Ruby on Rails中生成一個外部URL作爲replace_html調用的一部分?

我在模型「搜索」中有一個名爲「搜索」的字段,其中包含形式爲「www.example.com」或「example.com」的網址。我正在嘗試使用帶有replace_html的link_to_function調用,以使用當前實例中的'search'值作爲標記的src替換具有iframe標記的'maincontent'div。

我目前的嘗試是以下非常醜陋的代碼。我會很感激以下任何一種響應:

  1. 如何重寫串聯字符串以正確工作?
  2. 我怎樣才能達到同樣的效果(使用不同的方法與iframe代碼替換「搜索Maincontent」 div的當前內容?

(我不得不修改代碼之前,從取出<>其是否包含雙引號內的iframe)

link_to_function h(search.title) do |page| 

page.replace_html 'mainContent', 'iframe id="embedded" src="http://" + #{search.search} />' 

end 
+1

不知道你的問題的答案,但歡迎Vlasits先生! ;) – John 2010-05-21 18:12:49

回答

1
  1. 在Ruby中,#{variable}插值。

    "<iframe id='embedded' src='http://#{search.search}' />" 
    # Will expand to: 
    "<iframe id='embedded' src='http://www.example.com' />" 
    
  2. 目前發生了什麼事?你收到一個空的iframe

+0

是的,正好......一個空框架。 – vlasits 2010-05-21 23:40:48

+0

就是這樣。正確處理這些更改。 – vlasits 2010-05-22 22:01:20

+0

我會給你投票,但我沒有足夠的積分。 :( – vlasits 2010-05-22 22:02:13

相關問題