Sha256: 8e9d9708a7209680647d546d9321bf8f3edf64dcc100848a95a7b51809095c68

Contents?: true

Size: 348 Bytes

Versions: 1

Compression:

Stored size: 348 Bytes

Contents

class JsonValidator < ActiveModel::EachValidator
  def validate_each(record, attribute, value)
    record.errors[attribute] << (options[:message] || I18n.t('slash_admin.view.json_not_valid')) unless valid_json?(value) 
  end

  def valid_json?(string)
    begin
      !!JSON.parse(string)
    rescue JSON::ParserError
      false
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
slash_admin-0.1.0 config/initializers/validators.rb