【问题标题】:Getting an attribute directly from rails Class.find(:all) array of objects直接从 rails Class.find(:all) 对象数组获取属性
【发布时间】:2011-06-27 03:50:55
【问题描述】:

我知道 Person.find(:all) 返回一个 Person 对象数组,但是我是否可以通过某种方式获取 Person 表中所有人的 'name' 属性?

有点像

        Person.find(:all).names

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    使用 :select 仅检索特定属性。

    Person.all(:select => :name)
    

    将为您提供仅初始化 name 属性的人员对象。然后您可以映射/收集该属性以获取名称数组。

    【讨论】:

    • 少一步:Person.all.collect(&:name)
    • 这是一个不错的方法,为什么你必须使用& 代替&:name
    • @Besi 是Person.all.collect { |p| p.name } 或以下三行代码的简写方式:Person.all.collect do |p| p.name end 这是一个很好的解释:stackoverflow.com/a/9468624/444681
    猜你喜欢
    • 1970-01-01
    • 2022-10-19
    • 1970-01-01
    • 2015-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-05
    • 1970-01-01
    相关资源
    最近更新 更多