【问题标题】:How do you use ARel's #as method?你如何使用 ARel 的#as 方法?
【发布时间】:2010-04-06 20:44:36
【问题描述】:

如果你构建这样的投影:

t = Arel::Table.new(:projects)
ps = t.project(t[:id].as(:snark))

如何获得名为 :snark 的结果列?

【问题讨论】:

    标签: ruby-on-rails ruby arel


    【解决方案1】:

    由于您使用的是 Arel Core 而不是活动记录(将来会首选),因此您必须了解引擎背后发生了什么。根据您调用 .each 还是 .first,您将返回一个 Arel::Row(s) 数组或单个 Arel::Row(分别)

    Arel::Row 至少包含三个部分。关系、标题和正文(元组)。这些是关系代数的原理。

    t = Arel::Table.new(:projects)
    ps = t.project(t[:id].as(:snark)).first 
    #should do the trick and return an Arel::Row
    

    干杯

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-12
      • 2015-10-10
      • 2022-08-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多