I以下のモデルがあります:- 仮想属性
create_table "material_costs", :force => true do |t|
t.string "material"
t.integer "height"
t.integer "width"
t.decimal "cost", :precision => 4, :scale => 2
t.datetime "created_at"
t.datetime "updated_at"
end
は、どのように私は私に各材料の平方インチ当たりのコストを与えるために、モデル内の仮想属性を作成しますか?私は私のつまりがVAT率に追加する必要があり、それぞれの材料項目の平方インチ当たりの合計金額を与えるために、このモデルを使用するにはどうすればよい
create_table "taxes", :force => true do |t|
t.string "name"
t.decimal "rate", :precision => 10, :scale => 0
t.datetime "created_at"
t.datetime "updated_at"
end
:
また、私はVATの値を保持している別のモデルを持っていますか?
編集 - 私は今、次のモデルにVATの値を格納します。
create_table "app_options", :force => true do |t|
t.string "name"
t.string "value"
t.datetime "created_at"
t.datetime "updated_at"
end
編集 - これが私のコントローラのコードです:
def calculate_quote
@moulding = Moulding.find(params[:id], :select => 'cost, width')
@mount = MaterialCost.find(1).total_cost_per_square_mm
@glass = MaterialCost.find(2).total_cost_per_square_mm
@backing_board = MaterialCost.find(3).total_cost_per_square_mm
@wastage = AppOption.find(2, :select => 'value')
@markup = AppOption.find(3, :select => 'value')
respond_to do |format|
format.json { render :json => { :moulding => @moulding, :mount => @mount, :glass => @glass, :backing_board => @backing_board, :wastage => @wastage, :markup => @markup } }
end
end
'whichTax.rate'を使って正しい料金を選ぶにはどうしたらいいですか? – freshest
@frehest:私の編集を参照してください。それはまったく役に立ちますか? –
すべてをモデルに移動する方法はありますか?そのため、MaterialCostモデルからの総コストを取得すると、VATは既に適用されています。 – freshest