问题标签 [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 投票
2 回答
6894 浏览

ruby-on-rails - rails3 default_scope,以及迁移中的默认列值

当我进入控制台并创建新记录时,“已批准”属性设置为 true,为什么?

如何自动将其设置为默认值 (false),如迁移文件中所示?

wojciech@vostro:~/work/ze$ rails console Loading development environment (Rails 3.0.0) ruby-1.9.2-p0 > c = Crew.new => #<Crew id: nil, title: nil, description: nil, adult: nil, private: nil, gender_id: nil, approved: true, created_at: nil, updated_at: nil, logo_file_name: nil, logo_content_type: nil, logo_file_size: nil, logo_updated_at: nil>

0 投票
1 回答
646 浏览

ruby-on-rails - 模型的 default_scope 中的日期条件

我想确保只带回具有观看日期的电影并按该值升序排序。

我认为我与以下内容相当接近:

但我不知道如何为非空日期添加条件。

0 投票
2 回答
2415 浏览

ruby-on-rails - 连接表上的 Default_scope

我有一个如下模型设置:

我遇到的问题是 default_scope 未应用于以下关联:

而不是这个 SQL:

我在日志中得到这个 SQL:

我认为这是因为默认范围适用于常规模型及其子关联,但不适用于连接表。

什么是让连接表范围在关联之间工作而无需指定的正确 Rails 方法?一个存在吗?

0 投票
1 回答
223 浏览

ruby-on-rails - 为什么我的 ORDER BY 子句与此 ActiveRecord 范围重复?

我有这个模型:

使用范围时,我看到该ORDER BY子句有些奇怪的重复:inactive

这个真的让我摸不着头脑。如果相关,我正在使用MetaWhere gem。

更新:我已将其隔离为MetaWhere错误。香草 ActiveRecord 不会发生。

0 投票
2 回答
2843 浏览

sql - 如何在模型上放置多个默认范围?

我想知道您如何在模型上拥有多个默认范围(排序),例如我有一个评论模型需要按日期排序和批准:

那么您如何将这两个订单都放在模型上,所以我首先按批准订购,然后按日期订购。

干杯!

0 投票
1 回答
94 浏览

ruby-on-rails-3 - 在 Rails 3 中是否有更多与数据库无关的方法来编写此默认范围?

我在我的一个模型中定义了以下默认范围

它在我运行 MySQL 的开发机器上运行良好,但在部署到我们使用 postgres 的生产环境时出现故障。有没有办法使用 Arel 而不是直接 SQL 来编写它?FORMATS[:wide]返回一个整数,但它可能没有任何特定的顺序。我只想format先返回具有该特定内容的记录。

0 投票
3 回答
8858 浏览

ruby - 我怎样才能对我的默认范围进行 rspec 测试

我的模型有 default_scope(:order => 'created_at') 我的测试(rspec、工厂女孩、应该等)是:

0 投票
2 回答
11368 浏览

ruby-on-rails - Rails 3默认范围,覆盖范围

我有一种情况,现有应用程序的行为正在发生变化,这让我很头疼。

我的应用程序有照片。照片有一个状态:"batch", "queue", or "complete"。应用程序中的所有现有照片都是“完整的”。

99% 的时间我只需要显示完整的照片,并且在所有现有的代码库中,我需要对照片的每次调用都限制为仅显示完整的照片。

但是,在与上传和分类照片相关的屏幕中,我需要能够相当轻松地覆盖默认范围以显示批处理或排队的照片。

像许多其他人一样,我需要找到一种在某些情况下轻松覆盖默认范围的方法。我查看了这些问题(12),但它们似乎没有回答我正在寻找的内容。

我希望工作的代码是这样的:

但是,这是行不通的。我尝试将范围方法包装在 lambdas 中,但这也不起作用。

我意识到 default_scope 带有包袱,但如果我不能将它与覆盖一起使用,那么我正在考虑添加scope :complete ...并不得不梳理我现有应用程序中对照片的每次调用并添加.complete以过滤未处理的照片。

你将如何解决这个问题?

0 投票
1 回答
664 浏览

ruby-on-rails - % 不能用作 ActiveRecord default_scope 查询的通配符?

我在我的 Rails 项目中使用 ActiveRecord,我的一个类如下所示:

我的 default_scope 方法返回malformed format string - %'错误。我认为这是%导致所有麻烦的通配符。我也尝试过不转义/,所以不是......

你可以帮帮我吗?

谢谢

0 投票
2 回答
1506 浏览

activerecord - ActiveRecord STI:如何突破父类的默认范围

在 Rails 3.1 RC6 上,给定

以下不按预期工作:

生成的 SQL 语句如下所示:

如何完全覆盖父类的默认范围?

我还尝试了以下这些都不起作用: