Bazen, Activerecord veri türleri kafamı karıştırıyor. Err, sık sık. Sonsuz sorularımdan biri, belirli bir vaka için,
Kullanmalı mıyım
:decimal
yoksa:float
?
Sık sık bu bağlantıya rastladım, ActiveRecord:: decimal vs: float? , ancak cevaplar kesin olmam için yeterince açık değil:
İnsanların asla şamandıra kullanmamaları ve her zaman ondalık kullanmaları için düz olarak önerdikleri birçok iplik gördüm. Ayrıca bazı insanlar tarafından sadece bilimsel uygulamalar için şamandıra kullanma önerileri gördüm.
İşte bazı örnek durumlar:
- Coğrafi Konum / enlem / boylam:
-45.756688
,120.5777777
, ... - Oran / yüzdesi:
0.9
,1.25
,1.333
,1.4143
, ...
:decimal
Geçmişte kullandım , ama BigDecimal
Ruby'deki nesnelerle uğraşmanın bir şamandıra ile karşılaştırıldığında gereksiz bir şekilde garip olduğunu gördüm . Ayrıca :integer
parayı / sentleri temsil etmek için kullanabileceğimi de biliyorum , ancak örneğin, zaman içinde hassasiyetin değişebileceği miktarlar gibi diğer durumlar için pek uygun değil.
- Her birini kullanmanın avantajları / dezavantajları nelerdir?
- Hangi türün kullanılacağını bilmek için bazı iyi kurallar neler olabilir?