2010-12-14 11 views
3

上の仮想属性とRailsのモデルの拡張、Y、Z私は属性XとRailsのモデルを持っているランタイム

私は動的にデータをフェッチ中にこのモデルに属性P、Qを追加したいです。属性P、Qは、永続性を必要とせず、フロントエンド操作のためだけである。

これはまったく可能ですか?私はP、Qを別のオブジェクトに格納して元のモデルと一緒にそれを操作することでこれを達成することができましたが、ここに何が最良の方法であるかを尋ねることを考えました。

[レール2.3.5、ルビー1.8,7]

答えて

0

これは、あなたがyour_model.p呼び出すことができますあなたのモデルに

def p 
    @p || @p = fetch_p 
end 

をこのような何かを試してみてください。最初の呼び出しでは、fetch_p関数が呼び出され、クラス属性として格納されます。それ以降の呼び出しでは、単にキャッシュされた値が返されます。

+0

fetch_pとは何ですか? – papdel

+0

fetch_upはあなたが書いてください。何らかの形で計算されても、どこか(ファイル、データベースなど)からフェッチされたとしても、pの値を取得します。言い換えれば、fetch_pは、「データフェッチ中にこのモデルに属性Pを動的に追加する」とは何を意味していますか? –

関連する問題