sql >> Database teknologi >  >> RDS >> PostgreSQL

Hent IPAddr-forekomst fra dens json-repræsentation

Ikke sikker på om dette hjælper, men hvis du læser min kommentar under d_ethiers svar, kan du se at IPAddr ved ikke rigtig noget om JSON.

Men du kan abe patch det for at forstå JSON sådan:

require 'active_model'
require 'active_support'
require 'active_support/core_ext'
require 'ipaddr'

class IPAddr
  include ActiveModel::Serializers::JSON

  attr_accessor :addr, :mask_addr, :family

  def attributes=(hash)
    hash.each do |key, value|
      send("#{key}=", value)
    end
  end

  def attributes
    instance_values
  end
end   

p i = IPAddr.new('127.0.0.1')
p j = i.to_json
p IPAddr.new.from_json(j)
 

Output:

#<IPAddr: IPv4:127.0.0.1/255.255.255.255> "{\"family\":2,\"addr\":2130706433,\"mask_addr\":4294967295}" #<IPAddr: IPv4:127.0.0.1/255.255.255.255>

Kilde:
http://apidock.com/rails/ActiveModel/Serializers /JSON/from_json



  1. Hent hele rækken, men den første post mangler

  2. Udførelse af en joinforbindelse på tværs af flere heterogene databaser, f.eks. PostgreSQL og MySQL

  3. MySQL-forespørgsel til at beregne seneste gennemsnitspriser ved hjælp af data fra flere tabeller

  4. SQL Server 2017 Trin for trin installation -2