ruby-on-rails – 限制ActiveRecord中表示的列

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 限制ActiveRecord中表示的列前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何更改ActiveRecord以使其始终具有受限制的列集.我不希望后备表中的所有列都出现在模型中.这不必要地增加了ActiveRecord的内存占用以及查询记录所花费的时间.

有一些属性,如select(ar.rubyonrails.org/classes/ActiveRecord/Base),可用于仅选择几列.但是有没有办法我们可以强制ActiveRecord永远不会查询那些列,尽管用户只是在没有指定的情况下执行查找:始终选择.

解决方法

使用 default_scope

例如

class MyModel < ActiveRecord::Base
  default_scope select("column1,column2,column3")

  ...
end

猜你在找的Ruby相关文章