问题标签 [named-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.
ruby-on-rails - named_scope - 查找字段既不为空也不为空/空白的条目
我只想找到不为空或空/空白的记录,目前我有;
(画廊是一个字符串)但如果用户输入然后删除一个标题,那么这个空字符串将包含在结果中。
为了澄清我希望能够只选择该字段有一些文本的条目......
ruby-on-rails - 为什么这些 named_scopes 会导致重复的 INNER JOIN?
我有一个模型,我用它来使用awesome_nested_set
插件跟踪分层组织中的权限。我遇到了一个问题,两个named_scope
s 链接在一起时会创建一个 duplication INNER JOIN
。
这两个named_scope
s 位于Account
模型中,用于按用户和组过滤帐户:
这两个named_scope
s 都需要 join memberships
,但他们不应该能够做到这一点而无需重复吗?当它们链接在一起时,mysql会出现以下错误:
ruby-on-rails - 帮助重构 named_scope
我有以下named_scope:
我需要将条件重构为以下内容:
我对更改条件的语法不太满意。有人可以提供帮助吗?
sql - 如何编写一个命名范围来过滤所有传入的数组,而不仅仅是匹配一个元素(使用 IN)
我有两个模型,项目和类别,它们之间具有多对多的关系。项目模型非常简单:
:in_categories 范围采用类别 ID 数组(作为字符串),因此使用此范围我可以取回属于至少一个传入类别的每个项目。
但我真正想做的是过滤(更好的名字是:has_categories)。我只想获取属于传入的所有类别的项目。所以如果我传入 ["1", "3", "4"] 我只想获取属于所有类别的项目。
ruby-on-rails - Rails - 引用模型中的当前对象
我必须承认,我什至不确定我是否提出了正确的问题......
在我的应用程序中,我有一堆命名范围来构建更有效的查找。我无法上班的一个是:
=> 我想查找当前类别及其后代中的所有产品。我使用“祖先”gem 来构建树,它在类级别提供命名范围:
所以我认为有一个这样的named_scope是个好主意:
或者
这两件事都适用于控制器和助手,但不适用于模型......当我没有弄错时,它归结为“@category”(我在控制器中定义了它)在模型中不可用。
有没有一种方法可以让它可用?
谢谢你的帮助!
瓦尔
ruby-on-rails - named_scope 条件和时区不匹配
这是设置:
有时它被初始化:
问题......这些named_scope(s)是否生成相同的EXACT SQL?
和
在第一个示例中,我使用 end_date,在第二个示例中,我使用 end_date.utc。
(可能需要注意...... DB服务器的操作系统设置为CDT,而DB内部使用UTC。rails服务器的操作系统设置为CDT,应用程序实例设置为EDT。我意识到这可能是不是配置这些系统的最佳方式,但是,当前的问题是 ActiveRecord 输出。)
值得我的直觉是,第一个示例将为本地 TZ 生成一个时间字符串,而第二个示例将生成一个 UTC-0。
PS:有没有可以用来验证我的直觉的小测试用例?
ruby-on-rails - named_scope 和 named_scope + lambda 有什么区别
named_scope 和 named_scope + lambda Ruby on Rails 代码语句有什么区别?
和
ruby-on-rails - Rails 模型的默认条件
我有一个模型,它有一个名为 的字段deleted
,用于标记那些已删除的项目。
所以通常我只想查询那些有deleted = false
项目的人,并在某些特殊情况下列出那些已删除的项目以进行恢复。
有可能这样做吗?我现在能做的就是使用一个命名范围:conditions => {:deleted => false}
有没有更好的方法可以让当我这样做时Item.other_named_scope
,我可以找到所有那些未删除的项目?
ruby-on-rails - 在 has_many 关联中为“无子项”创建 named_scope
我想为零帖子的博客设置一个 named_scope。
以下不起作用。
ruby-on-rails - postgreSQL中的Rails named_scope错误,适用于SQLite
我有以下模型将用户与角色相关联:
UserRoleAssignment 中的命名范围在 SQLite 中有效,但在 postgreSQL 中无效,这会发出此错误:
我已经尝试了命名范围的许多不同变体(添加一个 :have 子句,添加额外的分组)但是每次我添加一些东西时,postgreSQL 中都会出现一个新错误,所以我已经恢复到我原来的简单命名范围。第一个作用域的重点是检索所有角色名称为“admin”的用户,第二个作用域是检索具有除“admin”以外的角色的用户。我将它与其他模型的搜索逻辑一起使用,它在 SQLite 中按预期工作,但在 postgreSQL 中没有(例如 User.user_role_assignments_has_admin_role)。
How can I modify these named_scopes to work with postgreSQL?