2009-12-18 72 views
0

好吧我已經發布了一些與我的問題有關的事情,但我認爲我已經縮小了範圍。這是我在哪裏:部分從外部main/index.rhtml渲染... Ruby on Rails

我有我的index.rhtml頁面裏面的/ views/main和main_controller設置正確。我試圖讓這個頁面成爲一個儀表板,所以它需要引用多個其他視圖來顯示它們的index.html.erb頁面。我將以'提案'爲例。我想在views/main/index.rhtml側欄中顯示提案views/proposals/index.html.erb頁面。我收集到了你通過偏見來做到這一點。

所以...我創建了一個文件/views/proposals/_index.html.erb,它具有與views/proposals/index.html.erb相同的代碼。

然後在我的意見/主/ index.rhtml裏的文件我有以下代碼:

<%= render :partial => @proposal %> 

現在,我沒有得到一個錯誤信息,則顯示根本不算什麼。我沒有在我的routes.rb文件中引用這個(我不認爲),我懷疑是這個問題。

對這個問題的冗餘抱歉,但我甚至都不知道我在問什麼。希望這可以幫助。

更新:

當我把<%= render :partial => "proposals/index" %>下面提到現在我得到這個錯誤:

You have a nil object when you didn't expect it! 
You might have expected an instance of Array. 
The error occurred while evaluating nil.each 

Extracted source (around line #1): 

1: <% @proposals.each do |proposal| %> 
2: <div id="proposalindex"> 
3: <%= link_to_unless_current h(proposal.name), proposal %><br/> 
4: <p5>Added <%= time_ago_in_words(proposal.created_at) %> ago | </p5 

這部分作品的提案控制器不是不知道這是什麼意思之內。

回答

2
<%= render :partial => "proposals/index" %> 
+0

我只是這樣做,仍然沒有去。進一步了一點,但現在又出現了另一個錯誤。我將更新該問題,以便您可以看到該錯誤。 – bgadoci 2009-12-18 21:28:00

+0

你在'MainController#index'中有'@ proposals'對象嗎?如果你想列出所有提議,你仍然需要在某個時候執行'@proposals = Proposal.all'。 – theIV 2009-12-18 21:38:38

+0

我不知道。在那裏展示它的最佳方式是什麼? – bgadoci 2009-12-18 21:40:57