2010-07-16 72 views
0

我有一个简单的模型default_scope:为了=>:指数不工作

class Item < ActiveRecord::Base 
    has_many :parts 
end 
class Part < ActiveRecord::Base 
    belongs_to :item 
    default_scope :order => :index 
end 

每个部分都有它自己的指标,有问题的项目内被订购。

当我在ItemsController.show方法中加载项目的零件时,零件没有排序。

这是DB会发生什么:

[4;35;1mPart Load (0.7ms)[0m [0mSELECT "parts".* FROM "parts" WHERE ("parts".item_id = 165968587) [0m 

难道光是在 “指数” 二字保留?

为什么订购不会发生?

回答

1

我不知道为什么不工作,但是你也可以尝试不同的东西:

class Item < ActiveRecord::Base 
    has_many :parts, 
      :order => :index 
end 
+1

谢谢你的建议的作品。但它只适用于,当我把它写成:has_many:parts,:order =>“\”index \“”。可能的,“索引”字是保留的。唯一的一件事,我在想 - 它会不会交叉数据库... – AntonAL 2010-07-16 18:58:00