可以说我有一个模型,Foo它很大并且有很多组件。对于给定的Ajax查询,我只对一个特定的属性感兴趣bar,该属性是foos表中的一列。
Foo
bar
有没有一种简单的方法可以仅加载该属性,而不必费心检索其余记录?例如,如果我只想知道ID# ___ _的Foo酒吧,我该如何检索呢?
通过select使用包含要返回的属性的字符串调用方法,可以仅返回特定的列。例如:
select
Foo.select('bar').first #<Foo bar: 1>
请记住,这些对象将像普通的ActiveRecord对象一样工作,但会nil为您未选择的任何字段返回,因此请小心使用此功能。
nil
您可以在类名本身或任何Relation上调用select,因此可以将通常使用的ActiveRecord调用(例如)链接在一起where。
where