class PostSchema < Dry::Validation::Contract
params do
required(:title).value(:string, size: 20)
required(:content).value(:string, size: 50)
end
rule do
# prevent this rule to execute if shema validation did not passed
end
end
@Uysim the easiest solution will be to base your rule on one or more schema keys. For example:
class PostSchema < Dry::Validation::Contract
params do
required(:title).value(:string, size: 20)
required(:content).value(:string, size: 50)
end
rule(:title, :content) do
# this will run only if schema processes these keys successfuly
end
end