Railsプロジェクトに「finance」gemを使用しようとしています。Gemfile を編集し、「bundle install」を使用して、gem を正常にインストールしました。次の行を含めました。
application_controller.rb
include Finance
これにより、コントローラー内の Finance gem 関数にアクセスできるようになります。しかし、私の数字には何かおかしなことが起こっています。次のリンクにアクセスすると、Rate オブジェクトを作成し、それを使用して償却を見つける方法の簡単な例を見ることができます。
http://rubydoc.info/gems/finance/1.1.2/frames
しかし、コントローラーで、提供されたコードを使用して Rate オブジェクトを変数に設定しようとすると、次のようになります。
@rate = Rate.new(0.0425, :apr, :duration => 30.years)
...これにより、「間違った引数の型 Flt::DecNum (予期されるスカラー数値)」というエラーがスローされます
何が起こっているかというと、Rate に渡す値「0.0425」は明らかに Float/DecNum ですが、Numeric オブジェクトが必要です。以下のコードを使用して数値を Numeric 型にキャストすると、エラーはなくなりますが、作成された Rate オブジェクトは実際には正しく機能しません。
@rate = Rate.new(0.0425.to_c, :apr, :duration => 30.years)
全体として、コントローラーやヘルパーで金融ジェムを使用できるようにしたいだけですが、渡した数値が間違ったタイプであるため、エラーが発生するようです。誰でも助けを提供できますか?