问题标签 [default-scope]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1083 浏览

ruby-on-rails-3 - find()'ing 父对象时确定 has_many 关系范围的最佳方法

我在使用我的测验应用程序理解默认范围和命名范围方面有些挣扎。我在rails 3.0上。

我有一个Question模型has_many UserResponse模型。

Question有问题text和可能answer_idsUserResponseuser_idaquestion_id和的关系answer_id

当我要向用户显示时,我不想同时拉动每find()一个. 默认情况下,我只想拉当前的,看看他们是否已经回答了这个问题。QuestionUserResponseUserResponseuser_id

如何在Question或上创建范围UserResponse来完成此操作?

0 投票
2 回答
2431 浏览

ruby-on-rails - Rails 3.1.3 无作用域

我看过很多关于这个的帖子,但似乎没有一个能解决我的问题。我有一个default_scope这样的模型:

我有其他(普通)范围,我想inactive使用unscoped. 我想将它定义为一个范围,但它仅在定义为类方法时才有效:

有没有我错过的方法,或者我必须使用类方法来定义这个范围?

0 投票
5 回答
11278 浏览

ruby-on-rails - 如何在 Rails 的 ActiveAdmin 中覆盖 default_scope

在使用 ActiveAdmin 注册的资源中,我为模型定义了以下 default_scope:

这显然使我无法通过单击列标题来更改资源索引页面上的排序。有没有办法保持这个默认范围但让 Active Admin 排序工作?

0 投票
2 回答
620 浏览

ruby-on-rails-3 - 默认范围 Mongomapper

我有一个大集合,它使用相同的集合,需要以不同的方式过滤

例如这个。

两者都使用相同的日志,但每个都需要在type字段上进行默认搜索。

0 投票
2 回答
5528 浏览

ruby-on-rails - 仅覆盖默认范围(特别是顺序),而不是 Rails 中的其他内容

所以基本上我有两个课程,BookAuthor。书籍可以有多个作者,作者可以有多个书籍。书籍具有以下默认范围。

在作者显示页面上,我想列出与该作者相关的所有书籍,所以我说以下...

到目前为止一切都很好。author#show 页面列出了属于该作者的所有书籍,按出版日期排序。

我还在研究一种能够按一本书的受欢迎程度排序的宝石。

问题是每当它尝试排序时,default_scope 总是会妨碍它。如果我在它摆脱作者关系并返回数据库中的每一本书之前尝试取消它的范围。例如

我想知道我是否可以使用ActiveRelation except() 方法 来做这样的事情(看起来它应该可以工作但它没有。它忽略了顺序,而不是当它是 default_scope 顺序时)

关于为什么这不起作用的任何想法?关于如何让它以不同的方式工作的任何想法?我知道我可以摆脱 default_scope 但我想知道是否还有其他方法可以做到这一点。

0 投票
3 回答
790 浏览

ruby-on-rails - Rails 3 上的所有者过滤模型对象

我需要对我的 ActiveRecord 模型进行一些过滤,我想通过 owner_id 过滤我的所有模型对象。我需要的基本上是 ActiveRecord 的 default_scope。

但我需要按一个会话变量进行过滤,该变量无法从模型中访问。我已经阅读了一些解决方案,但没有一个有效,基本上它们中的任何一个都说您可以在声明 default_scope 时使用会话。

这是我对范围的声明:

很简单,对吧?但它没有说方法会话不存在

希望你能帮忙

0 投票
1 回答
1044 浏览

ruby - Sequel::Model (Ruby ORM) 中的单表继承

我的数据库中providers有一个名为的表,其类型列名为provider_type. provider_type可以是以下任意一种:

  • 中央
  • 赞助

我想创建一个继承自Sequel::Model被调用的类Center和一个被调用的类Sponsor,生成的方法将通过provider_type = 'center'or限定相应类的所有查询provider_type = 'sponsor'

我能够做到这一点并不是 100% 必要的,但如果可能的话,那将是理想的。

0 投票
1 回答
2452 浏览

ruby-on-rails - default_scope 与 :include 选项 rails 3.2

我正在将 rails3 应用程序升级到 3.2.6 我对已弃用的带有选项的 default_scope 有一些问题。

我有几个模型 Campaigns 和 Sites 通过campaign_sites 建立了多对多的关系。

这在 rails 3.0.10 上运行良好,但在升级到 3.2.6 后,我在这一行中收到以下 mysql 错误。

0 投票
1 回答
2141 浏览

ruby-on-rails - Mongoid default_scope

我在 mongoid 驱动的模型上设置了 default_scope。

当我发现没有问题时:

返回当前租户的学生

当我创建一个学生时:

返回零

不分配当前租户

但如果我这样做:

有用

也:

这是正常行为吗?

谢谢队友

0 投票
2 回答
1939 浏览

ruby-on-rails-3 - rails default_scope 抛出异常:未定义的方法 abstract_class?对象:类

我想在我的应用程序中应用逻辑删除(而不是永久删除已标记为已删除的记录)。我已将可用列添加到默认值为true的所有表中。现在我想共同为所有模型编写以下代码。

参考Rails 扩展 ActiveRecord::Base,我决定使用猴子补丁来做上面的事情。在 config/initializer/active_record_patch.rb 中创建猴子补丁文件:

添加 default_scope 时出现以下错误

/gems/ruby-1.9.2-p290/gems/activerecord-3.0.9/lib/active_record/base.rb:1212:in class_of_active_record_descendant': undefined methodabstract_class?对于对象:类(NoMethodError)