是否可以这样做:user = User.find(234234)并以某种方式忽略select查询中的某些列?

时间:2011-04-21 14:49:31

标签: ruby-on-rails activerecord

我有一些包含大量数据(文本等)的列,有时我只是显示行的摘要列表,我不想获取所有数据。

是否可以选择排除某些列?

2 个答案:

答案 0 :(得分:8)

我认为您不能排除某些列,但您可以让ActiveRecord使用:select参数返回特定列,例如

@articles = Article.find( :all, :select => ‘created_at, title, summary’ )

答案 1 :(得分:1)

您可以通过sql查询找到,这样您就可以获取所需的数据及其简单的

Post.find_by_sql(“SELECT title FROM posts WHERE author =?AND created>?”,author_id,start_date)