我需要从我的Rails应用程序中的Model中获取验证规则列表。我一直在搜索并查看了一些客户端验证宝石的来源,但我仍然在摸索如何做到这一点。是否有一种简单的方法可以从Rails模型中提取验证规则列表?
我的具体用例是创建一个API,其中新项目的输入表单将从模型定义中自动生成,我需要能够表达哪些字段是必需的,最大长度等。我已经有了字段来自columns
方法的类型和长度,但似乎没有任何类型的类似validations
方法返回我需要的内容(主要是validates
强制执行的必填字段validates_presence_of
等。)。
答案 0 :(得分:18)
查看#validators
和#validators_on
方法:
http://api.rubyonrails.org/classes/ActiveModel/Validations/ClassMethods.html
您必须编写一些对返回的对象进行操作的自定义代码,并确定哪些属性是必需的,即哪些属性具有validates_presence_of
。