我们正在考虑使用改革宝石来验证输入。
我们面临的一个问题是我们接受这种格式的输入:
params = {
records: {
"record-id-23423424": {
name: 'Joe Smith'
}
"record-id-43234233": {
name: 'Jane Doe'
}
"record-id-345234555": {
name: 'Fox trot'
}
"record-id-34234234": {
name: 'Alex'
}
}
}
所以,如果我们要创建改革班
class RecordForm < Reform::Form
property :records
validates :records, presence: true
# ?????????
end
我们如何验证记录的内容以确保每个记录的名称?记录id值未提前知道。
答案 0 :(得分:0)
改革目前不允许动态属性,实际上,由于改革应该是一个特定于UI的表单对象,所以它没有计划。
解决方案是将您的输入预先解析为what Laura suggests。然后,您可以为每个字段设置嵌套属性。
collection :records do
property :id # manually parsed
property :name
end