Мой подход терпит неудачу. n
установлен в nil
, тогда как он установлен правильно, если его тип Double?
. Есть ли правильный способ это сделать?
class Model: Mappable
{
var n: NSDecimalNumber?
required init?(_ map: Map)
{
super.init()
mapping(map)
}
func mapping(map: Map)
{
n <- map["n"]
}
}
ObjectMapper не поддерживает NSDecimalNumber. По возможности мы избегаем типов Objective-C.
Если вам нужен NSDecimalNumber, вы можете рассмотреть возможность использования CustomTransform для его поддержки.
Необходимо учитывать NSDecimalNumber. В Swift нет замены этому типу. Это единственный тип, который можно использовать для обозначения денег. Double или float - не альтернатива.
@jonasman Хотя я согласен с вами, в ObjectMapper есть NSDecimalNumberTransform, так что это небольшое неудобство.
Тогда это звучит хорошо.
Самый полезный комментарий
Необходимо учитывать NSDecimalNumber. В Swift нет замены этому типу. Это единственный тип, который можно использовать для обозначения денег. Double или float - не альтернатива.