0
我正在砸我的頭,想出一種方法來獲得不同的部分集合。我用這個來列出諧音稱爲@feed_items的集合(在「分享Tweet」類)及其對一類工作的偉大:部分的異構集合
<%= render :partial => 'shared/feed_item', :collection => @feed_items %>
@feed_promos泛音有不同的類的對象(「促銷」級),並且它們與feed_item部分位於相同的「共享」目錄中。有沒有人知道集合中有@feed_promo和@feed_item的代碼?
我曾嘗試使用軌道3快捷這個簡化:
<%= render [feed_items, feed_promos] %>
,但我得到一個錯誤,因爲它希望找到的鳴叫模型的模板,但它不存在,我想諧音的集合,而不是不同類的對象(比如Tweets)。我已經去到relationship.rb和tweet.rb並已包括:
def to_partial_path 'shared/'
不幸的是它沒有工作。 +在控制器中未被識別,所以我將其更改爲'&&'。是對的嗎?此外,你的意思是'_tweet.html.erb'的部分名稱,而不是'_tweet.rb'?我嘗試了這些更改,但仍在頁面上出現ArgumentError:'nil'不是返回有效部分路徑的ActiveModel兼容對象。 – Tim 2012-03-29 03:39:54
對不起,在擴展名上的錯誤,它被編輯。 「@ feed_items」和「@ feed_promos」有哪些類型? '+'操作符將兩個數組合併成一個。它可以在我的電腦上正常工作。 '&&'是錯誤的:它是一個邏輯AND並返回nil或第二個操作數。你得到一個錯誤,因爲'@ feed'是'nil'而不是'Array'。 – 2012-03-29 14:06:11