所以我有我的改革对象,并且我想在验证之前解析我的字符串数据,以便能够使用干燥验证
required(:my_field).filled(gt?: 0)
为此,我使用填充器
property :membership_fee, populator: MyPopulator
我的问题是访问和解析改革对象采用的数据的最佳方法是什么。
现在,我使用:
property :my_field, populator: lambda { |fragment| fragment[:doc]['my_field'] = BigDecimal.new(fragment[:doc]['my_field']) }
但是我不确定这是否是最好的方法-我的意思是通过fragment [:doc]访问它是最漂亮的方法吗?我不确定到底要在以后的改革中使用什么fragment [:doc]。
答案 0 :(得分:2)
我将使用干燥验证输入预处理https://dry-rb.org/gems/dry-validation/input-preprocessing/
Response.Redirect(httpWebResponse.ResponseUri.ToString(), true);
答案 1 :(得分:1)
我认为您可以为返回该对象的my_field
分配十进制值,例如:
property :my_field, populator: ->(_fragment:, **) do
BigDecimal.new(my_field)
end