PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Pobierz instancję IPAddr z jej reprezentacji json

Nie jestem pewien, czy to pomaga, ale jeśli przeczytasz mój komentarz pod odpowiedzią d_ethiera, zobaczysz, że IPAddr tak naprawdę nie wie nic o JSON.

Możesz jednak go załatać, aby zrozumieć JSON w następujący sposób:

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)

Wyjście:

#<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>

Źródło:
http://apidock.com/rails/ActiveModel/Serializers /JSON/from_json



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Railsy oczekujące na migrację w rake db:test:prepare

  2. Dlaczego niewielka zmiana wyszukiwanego hasła tak bardzo spowalnia zapytanie?

  3. postgresql postgis Jeśli punkt wewnątrz okręgu

  4. BŁĄD:brak pamięci na komputerze z 32 GB pamięci RAM i bez pliku wymiany

  5. Ogólny wyzwalacz do ograniczania wstawiania na podstawie liczby