问题标签 [arel]
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 - Rails 3 ActiveRecord查询:查找该用户已订购的该产品的数量
我有一个order
模型belongs_to :user
,一个product
模型,一个连接模型order_product
:
该order_product
模型有一个quantity
列。
我怎样才能找到p
用户订购了多少产品u
?我想找到一个使用 rails 3 的活动记录查询语法并尽可能在数据库级别进行的解决方案。我会很感激任何帮助。
ruby - 覆盖 ActiveRecord::QueryMethods 中的方法
出于教育和实验的原因,我希望能够覆盖 ActiveRecord::QueryMethods 中的某些方法。
示例:User 是一个 ActiveRecord 类,其中包括覆盖 QueryMethod“订单”的模块:
但是,我似乎无法让事情正常进行。我应该覆盖什么模块?ARel gem、AR::Relation 或 AR::QueryMethods 中有什么东西?
ruby-on-rails - Rails/Arel:选择所有记录作为 ActiveRecord::Relation
在 Rails 中使用 Arel - 我正在寻找一种创建ActiveRecord::Relation
有效结果的方法SELECT * FROM table
,我仍然可以进一步操作。
例如,我有一个分成多个类别的模型,我以下列方式返回这些类别的计数:
这很好用,并且具有COUNT
向 MySQL 发起查询的优势,而不是实际选择记录本身。
但是,我现在需要在计数中包含存档记录,但relation = Model.all
结果是Array
,我正在寻找ActiveRecord::Relation
.
我能想到的唯一方法是model.where(model.arel_table[:id].not_eq(nil))
,它有效,但似乎有点荒谬。
任何人都可以对此有所了解吗?
ruby-on-rails - Rails 3 HABTM 使用条件 = 数组进行查询的正确形式
我正在实施我的第一个 HABTM 关系并且遇到了我的查询问题。
我正在寻找验证我的方法并查看是否在 AREL(或 Rails 的其他部分)代码中发现了错误。
我有以下型号
我有关联的 items_regions 表:
我的目标是创建一个范围/查询如下:
查找区域(及其子区域)中的所有项目
祖先 gem 提供了一种将 Region 的后代类别作为数组检索的方法。在这种情况下,
如果数组中只有一个元素,则以下工作
生成的sql是
但是,如果数组中有多个项目并且我尝试使用 IN
生成的sql最后有错误
生成代码的最后一部分应该是 (region_id IN ("1,2,3,4"))
如果我手动编辑 sql 并运行它,我会得到我所期望的。
所以,两个问题:
- 我对单值案例的方法是否正确?
- sql生成是错误还是我配置错误?
谢谢艾伦
ruby-on-rails - What does AREL stand for?
What does AREL stand for? I couldn't find what's the meaning of this acronym anywhere.
ruby-on-rails-3 - 我在哪里可以找到好的 AREL 文档?
我正在尝试尽可能多地了解 AREL。但我不确定要看什么。
我在 rubydoc 上找到了一些文档,但在显示我可以做的“公共 API”/可访问的事情方面似乎不是很好。例如,我找不到有关“包含”方法的任何信息。
那么,究竟如何学习 AREL 所提供的大部分内容呢?(即无需深入研究源代码)
ruby - Rails 3 NoMethodError:nil的未定义方法“名称”:NilClass
每当我尝试使用
或者
生产
NoMethodError:nil 的未定义方法“名称”:NilClass
我的表模型是
ruby-on-rails - 使用多个数据库时如何使用 AREL?
调用 Table(*column_symbol*) 时,假设我们正在使用主数据库。
如何在第二个数据库中使用 arel 表,而不必为每个查询的表使用 ARModel?
ruby-on-rails - How can I convert that to MetaWhere or Arel?
Consider a City Model having:
How can I use Arel or Metawhere in that situation knowing that field is a String can have anything like:
"name" "residents.name" "state.name"
I want to do something like that (will not work):
So, what are your thoughts?
The real question is, how can I convert that:
"residents.name LIKE '#{value}%'"
To that:
:residents => { :name =~ "#{value}%" }