首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未知验证器: Rails上的“InValidator”

未知验证器: Rails上的“InValidator”
EN

Stack Overflow用户
提问于 2020-12-19 20:23:06
回答 1查看 1.5K关注 0票数 5

我正在遵循Rails的官方开始指南。指南提供了以下代码,以将状态验证添加到关注的事项中:

代码语言:javascript
复制
module Visible
  extend ActiveSupport::Concern

  included do
    VALID_STATUSES = ['public', 'private', 'archived']

    validates :status, in: VALID_STATUSES
  end

  def archived?
    status == 'archived'
  end
end

但是,我得到了以下错误:Unknown validator: 'InValidator' on validates :status, in: VALID_STATUSES。我正在使用Rails 6.1.0,并且完全按照这个版本的指南操作。这里有什么问题?

编辑

我做了一个小小的改变,让它发挥作用:validates :status, inclusion: { in: VALID_STATUSES }。但是我想知道为什么in没有像指南中那样工作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-19 22:37:03

指南似乎是错误的,您将其更改为inclusion: { in: [] }的解决方案是正确的。

Rails存储库中已经合并了一个修复程序,但似乎还没有部署。

为了添加一些背景信息,Rails中的实现会实例化验证器类它被称为InclusionValidator

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65374097

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档