我的数据库表有一列可以包含大量数据。 我不希望这些数据成为相应rails对象(模型)的一部分。
如何在模型中告诉我不想将此字段存储在内存中?
最初这是因为我的会话大于4k而且rails引发了一个ActionController :: Session :: CookieStore :: CookieOverflow异常。
感谢您的帮助, 迈克尔。
答案 0 :(得分:1)
加载模型时,您可以显式设置要选择的列并跳过大列:
MyModel.find(id, :select => 'column1, column2, column3')
答案 1 :(得分:1)
您必须通过find-option :select
明确指定列。
但是,不鼓励在会话中存储模型。如何在会话中只存储object-id,并将模型对象本身保存在Rails.cache
中?