Cannot read property 'jqXHR' of undefined

我在执行以下操作时遇到了这个错误。
所有内容都在一个插件中完成。

我在 Post 类中添加了一个 Validator……其内容并不重要,但为了回复的完整性,我还是把它列出来。

frozen_string_literal: true

class MainPostValidator < ActiveModel::Validator
def validate(record)
puts ‘TTTTT’
p record

raw = record.raw

unless raw.present?
  post.errors.add :base, 'This record is invalid'
end

end

private
def some_complex_logic
# …
end
end

在运行带有新更改的服务器之前,我已经在网页上打开了帖子编辑页面,准备检查保存更改是否会触发我的验证器。

我重启了服务器,但没有刷新页面!当我在帖子上点击“保存更改”时,我看到了那个错误。一旦我刷新了页面(也许还重启了服务器实例),错误就消失了。

这一切都是在本地开发环境中完成的。

希望这能帮到你 :slight_smile:

该验证器声明在一个新文件中,而用于应用验证器的 Post 额外代码也放在一个新文件中。

require_dependency 'post' Post.class_eval { include ActiveModel::Validations validates_with MainPostValidator }