0

我有一个这样的学生数组

[#<Student id: 2, admission_no: "2", gender: "m", blood_group: "A">,#<Student id: 3, admission_no: "3", gender: "m", blood_group: "A">]

我通过named_scope获取这个数组......那么有没有办法只选择具有命名范围的必需属性......我需要从中删除admission_no和blood_group并只返回一个包含学生ID和性别的数组......怎么样有可能。我正在使用 rails2.3

4

3 回答 3

1

named_scope_result.select('id, gender')会给你你想要的结果。

于 2013-09-11T07:43:38.240 回答
0

这样做 Student.select('id, gender').find(:all)

于 2014-03-20T05:31:34.480 回答
0

您希望拥有一个仅包含所需字段的哈希数组,从您的数组开始。

Student.select('id, gender').find(:all)

如果您想考虑数据库中的所有 Student 对象,就可以了。

从一个通用的学生数组开始:students你可以通过以下方式实现你想要的:

result = Array.new
students.each |s| do
  data = { "id" => s.id, "gender" => s.gender }
  result << data
end
于 2013-09-11T07:43:52.940 回答