从数据库项数组中获取属性数组

aft*_*pet 2 ruby arrays ruby-on-rails

我的 Rails 应用程序中有一个模型类别,它有一个属性名称。添加另一个模型的项目时,我希望用户可以根据类变量@categories 从下拉列表中选择类别名称。

为此,我需要从 Category 类型的数组生成名称的字符串数组,但我不太确定如何在不将整个 Category 对象的字符串表示形式放入每个下拉项中的情况下执行此操作。

有谁知道如何做到这一点——从类对象数组中获取类属性数组?

Car*_*III 6

您可以使用ActiveRecordpluck方法获取特定类属性的数组。

Category.pluck(:name)
Run Code Online (Sandbox Code Playgroud)

如果您有一个常规的Category对象数组,那么您可以使用该Array方法map

Category.map(&:name)
Run Code Online (Sandbox Code Playgroud)

两者都会产生一个包含nameeach 属性值的数组Category