18
有沒有辦法清除.select(「table.col1,...」)語句中的舊選擇?ActiveRecord .select():可以清除舊的選擇?
背景:
我已經請求訪問的項目給定用戶ID的範圍(簡體)
scope :accessible, lambda { |user_id|
joins(:users).select("items.*")
.where("items_users.user_id = ?) OR items.created_by = ?", user_id, user_id)
}
然後,例如,在索引操作我只需要項目ID和標題,所以我這樣做:
@items = Item.accessible(@auth.id).select("polls.id, polls.title")
然而,這將選擇列 「項目,items.id,items.title。」我想避免從範圍中刪除選擇,因爲那樣我就不得不在其他地方添加一個select(「items。」)。我是否有理由認爲沒有辦法做到這一點,我要麼活着拿太多的領域,要麼必須使用多個範圍?
歡呼聲,你只是讓我愛上了更多:D – mkon 2011-02-12 17:46:10