モデル内のさまざまな値を単純なTRUEまたはFALSEにするために、多数の計算を扱っています。問題は、これらの計算は非常に激しく、私は長いSQL文に従うのは難しいを作成したいものではありません。レコードを返すときにモデルがチェックできるメソッド内で、計算全体を取得するだけです。Rails 3、モデルメソッド/計算された属性
これを達成するためのさまざまな方法を試しましたが、他の同様の賞を見ると、他の人が私のようなnewbsをSQLにプッシュします。これはほとんどの目的に役立ちますが、実行される計算がモデル外。
モデル:
class Quality < ActiveRecord::Base
...
def passed_inspection
[code that calculates based on values in model]
end
コントローラー:
@records = Quality.where('passed_inspection = true')
ビュー:
Did pass inspection?: <%= record.passed_inspection %>
あなたがしようとしている計算の例を投稿することができますか? – ScottJShea
何が問題になっていますか?長いSQL文を使用したくない場合は、モデルのメソッドをコードしてください。モデルのクラスに計算コードを入れたくない場合は、モデルを入力としてTRUEまたはFALSEを戻すコントローラー・ヘルパー・メソッドを作成します。 –
@MatteoMelani私はすでにビューヘルパーとして表されている計算を持っていますが、合格/不合格に基づいてレコードを取得する必要もあります。たとえば、失敗したレコードのみを表に出力するビューがあります。 – Nick