[英]Rails 3 - Polymorphic and Global Scopes
我一直在尝试找出如何正确使用范围的以下示例。
有一个表Notes,它具有与项目的多态关联。 但是我也允许有“全局” Notes,所以当我在Notes上进行作用域时,我希望它将多态关联返回到Items和NULL多态字段,并带有IsReviewed类型布尔值等其他条件。 我尝试执行以下操作,但效果不佳。
scope :is_reviewed, lambda { { :include => [:category, :notable], :conditions => ["is_reviewed = ?", true] } }
然后尝试但不返回“全局”
scope :is_reviewed, lambda { { :include => [:category, :notable], :conditions => ["notable_type = 'Item' and is_reviewed = ?", true] } }
并尝试但似乎无法正常工作
scope :is_reviewed, lambda { { :include => [:category, :notable], :conditions => ["(notable_type = 'Item' or notable_type = NULL) and is_reviewed = ?", true] } }
任何想法或帮助将不胜感激。 谢谢
实际上,我注意到我还有另一个问题导致该示波器无法正常工作。 以下作用域确实可以用于在存在显着对象的情况下检索显着对象,并且您可以在分部或助手中搜索显着类型,以对显着类型进行正确的逻辑处理。
scope :is_reviewed, lambda { { :include => [:category, :notable], :conditions => ["is_reviewed = ?", true] } }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.