2008-12-30 41 views
4

我有一些不需要任何持久性的rails模型,但是我希望rails認爲模型實際上具有屬性x,y,z,所以當調用類似to_json的方法時控制器我得到他們免費。沒有相應的列在db中的rails模型屬性

例如,

class ModelWithoutTableColumns << ActiveRecord::Base 

def x 
    return "Custom stuff here" 
end 

有一個在數據庫中沒有列X的表「ModelWithoutTable」(對不起,我稍微有一些混亂的名字!)

人有一個想法如何解決這一個?

+0

http://stackoverflow.com/questions/993839/how-to-iterate-activerecord-attributes-including-attr-accessor-methods – 2013-09-19 22:52:04

回答

2

只是不從ActiveRecord的繼承:: Base的

編輯:也許方法:你試過路過選項to_json,什麼樣的?請參閱here

+0

不可能混合搭配? – 2008-12-30 03:54:36

1

這不起作用 - ActiveRecord :: Base定義to_json,但需要一個表。

你應該看看ActiveRecord :: BaseWithoutTable插件。 Here's how to use it,這裏是updated version for Rails 2

我還沒有嘗試過其中任何一個,所以沒有保證。

1

您可能還想查看acts_without_database,關於它的當前詳細信息是here,但該網站目前處於關閉狀態。 Here's the posting on RubyFlow,從今天開始。