Эта ошибка появилась у меня при выполнении следующих действий.
Всё делалось в плагине.
Я добавлял валидатор к классу Post… содержание не имеет значения, но я приведу его ради ответа.
frozen_string_literal: true
class MainPostValidator < ActiveModel::Validator
def validate(record)
puts ‘TTTTT’
p recordraw = record.raw unless raw.present? post.errors.add :base, 'This record is invalid' endend
private
def some_complex_logic
# …
end
end
Перед запуском сервера с новыми изменениями у меня был открыт сайт на странице редактирования поста, готовый проверить, сработает ли мой валидатор при сохранении изменений.
Я перезапустил сервер, но не обновил страницу! Когда я нажал «Сохранить изменения» для поста, я увидел эту ошибку. Она исчезла после обновления страницы, а возможно, и после повторного перезапуска экземпляра сервера.
Всё это делалось в локальной разработке.
Надеюсь, это поможет ![]()
Валидатор был объявлен в новом файле, и дополнительный код для класса Post, применяющий валидатор, также находился в отдельном файле.
require_dependency 'post' Post.class_eval { include ActiveModel::Validations validates_with MainPostValidator }