価格を整数として保存することにしましたが、これには問題があります。
もちろん、ユーザーは価格をポンドとペンスで入力します。私はペンスとして保存したいのですが、これを行う最良の方法は何ですか。
私がこれまでに試したことは、before_save
私のモデルでは次のとおりです。
def convert_price
self.price = self.price * 100
end
しかし、これには2つの問題があります.1つ目は、コントローラーでトランザクションを使用しているため(保存する前に、実行中の他の何かが問題ないことを確認するため)、100を2回掛けているようです! 2 番目の問題は、たとえばユーザーが 56.85 と入力すると、ターミナルを見ると入力が 56 であると表示されることです。これは、他の処理を行う前に Int として型キャストされるためです。
Money ジェムはやり過ぎだと思うので使いたくありません - 素敵でシンプルな解決策を望んでいます。