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

Railsy wyszukują według zserializowanej tablicy

Rozwiązaniem, którego na razie używam (zdecydowanie otwarte na inne podejścia!) jest zmuszenie Railsów do serializacji z czymś innym niż Yaml, aby umożliwić zapytania łańcuchowe:

class Foo < ActiveRecord::Base
  serialize :arr, SerializedArray

  def self.find_by_arr
    self.where(arr: SerializedArray.dump(arr)).take
  end
end

class SerializedArray
  def self.load(arr)
    arr ? JSON.load(arr) : nil
  end

  def self.dump(arr)
    arr ? JSON.dump(arr) : nil
  end
end

To trochę dziwne, ponieważ muszę wysyłać zapytania za pomocą niestandardowego find_by_arr , ale to działa.

(Edycja:usunięto zły przykładowy kod.)




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Porównanie magazynów danych dla PostgreSQL — MVCC vs InnoDB

  2. Instalowanie psycopg2 (postgresql) w virtualenv na windows

  3. W jaki sposób moja aplikacja Ruby on Rails może uzyskać dostęp do bazy danych bez hasła?

  4. Czy przypadek ma znaczenie, gdy „auto” ładuje dane z S3 do tabeli Redshift?

  5. PostgreSQL 9.1:Jak łączyć wiersze w tablicy bez duplikatów, DOŁĄCZ do innej tabeli