2011-08-14 61 views
3

我如何設置默認爲我的嵌入式對象,如:與默認順序Mongoid embeds_many

class Post 
    embeds_many :comments, :order => "author" 
    accepts_nested_attributes_for 
end 

現在我通過順序直接處理:

f.fields_for :comments, @post.comments.asc(:author) do |comment| 
    ... 
end 
+0

您正在使用哪個版本的mongoid? https://github.com/mongoid/mongoid/blob/master/lib/mongoid/relations/embedded/many.rb#L495你可以看到,embeds_many接受來自2.1.0的':order'選項 – rubish

+0

@Rubish Gupta,哇!我在'2.0.2'!但對'2.1.7'( – fl00r

+1

)沒有影響,或者它也可以在2.0.2中接受它,因爲最近在mongoid中添加了對選項的驗證代碼。因此,也許2.1.0只是添加了一個返回有效選項的方法如果你還沒有考慮升級,你應該嘗試使用':order' – rubish

回答

6

在mongoid 3.1.2你可以做這樣的事情:

embeds_many :favorites, order: :title.desc 

它還與:title.asc

+0

這在Mongoid 5.1中依然如此 – ABrowne