Ruby on rails rails命名为\u范围和:源

Ruby on rails rails命名为\u范围和:源,ruby-on-rails,scope,named,Ruby On Rails,Scope,Named,我是Rails的初学者 我们可以将:source与命名范围一起使用吗 我可以用它与许多其他协会 谢谢 标记如果可以在find()调用中使用它,通常可以将其与命名范围一起使用。find的参数在文档()中逐项列出,但我不确定source是否是其中之一。据我所知,这是为了一种有很多关系的事情,不是为了寻找 但是,命名作用域可以应用于关系,因此这可能就是您的意图。如果您可以在find()调用中使用它,通常可以将其与命名作用域一起使用。find的参数在文档()中逐项列出,但我不确定source是否是其中之

我是Rails的初学者

我们可以将
:source
与命名范围一起使用吗

我可以用它与许多其他协会

谢谢
标记

如果可以在find()调用中使用它,通常可以将其与命名范围一起使用。find的参数在文档()中逐项列出,但我不确定source是否是其中之一。据我所知,这是为了一种有很多关系的事情,不是为了寻找


但是,命名作用域可以应用于关系,因此这可能就是您的意图。

如果您可以在find()调用中使用它,通常可以将其与命名作用域一起使用。find的参数在文档()中逐项列出,但我不确定source是否是其中之一。据我所知,这是为了一种有很多关系的事情,不是为了寻找


但是,命名作用域可以应用于关系,所以可能这就是您的意图。

不,您不能,因为您不需要。 命名范围是中定义的模型的一部分

class Post
  named_scope :published, :conditions => { :published => true }
end
但是,这并不阻止您通过关联使用命名范围

class Category
  has_many :posts
end

category.posts # => all posts
category.posts.published # only published posts

不,你不能,因为你不需要。 命名范围是中定义的模型的一部分

class Post
  named_scope :published, :conditions => { :published => true }
end
但是,这并不阻止您通过关联使用命名范围

class Category
  has_many :posts
end

category.posts # => all posts
category.posts.published # only published posts

然而,这种方法完全忽略了Demeter定律,这是has_many=>的主要优点之一。然而,这种方法完全忽略了Demeter定律,这是has_many=>的主要优点之一