我正在使用Ruby on Rails,并且我有一个包含许多不同必填字段的模型。有没有办法只检索必填字段的列表?
我不相信ModelName.validators可以工作,因为我只想要必填字段。我也尝试过ModelName.column_names,但这给了我所有的领域。

最佳答案

我认为validators可以工作,但是您必须过滤presence验证器:

ModelName.
  validators.
  grep(ActiveRecord::Validations::PresenceValidator). # only `presence`
  flat_map(&:attributes)                              # only the attribute names

10-08 04:21