Валидация параметра модели в которому находится JSON С параметрами


(Женя Мельниченко) #1

Как провалидировать каждый элемент JSON который находится в поле модели.
Есть модель Question а в ней находится поле data{}

Не использовать никаких гемов. Все написать нужно ручками(


(Tigran Apoyan) #2
# models/question.rb
class Question < ApplicationRecord
  validates :data, json: validations # => validations = { presence: [:name, :other_field..]... }
end

# validators/json_validator.rb
class JsonValidator < ActiveModel::EachValidator
  def validate_each(record, attribute, value)
     puts options
     # your code here
  end
end