[英]Dry-Validation - no implicit conversion of Float into String on rules
我正在嘗試驗證架構中鍵的值。
但是我no implicit conversion of Float into String
因為該值是float,並且我正在使用正則表達式來驗證格式。
VALIDATION_PARAMETERS = Dry::Validation.Schema(ApplicationSchema) do
required(:uid, :string).filled
required(:value).filled
rule(insulating_surface: [:uid, :value]) do |uid, value|
uid.eql?('insulating_surface').then(value.format?(FLOAT_FORMAT))
end
end
我也試圖將Float轉換為String,但是它返回undefined method format?' for #<String:0x0000557d8877a910>
undefined method format?' for #<String:0x0000557d8877a910>
rule(insulating_surface: [:uid, :value]) do |uid, value|
uid.eql?('insulating_surface').then(value.to_s.format?(FLOAT_FORMAT))
end
我對干燥驗證不是很熟悉,但是我看到有很多內置謂詞記錄在案,包括float?
一。 請嘗試以下操作:
rule(insulating_surface: [:uid, :value]) do |uid, value|
uid.eql?('insulating_surface') > value.float?
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.