sql >> データベース >  >> RDS >> PostgreSQL

レールはシリアル化された配列で検索します

    私が今使用している解決策(他のアプローチに間違いなくオープンです!)は、文字列クエリを可能にするために、RailsをYaml以外のものでシリアル化することを強制することです:

    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
    

    カスタムのfind_by_arrでクエリを実行する必要があるという点で、少し厄介です。 、しかしそれは機能します。

    (編集:悪いサンプルコードを削除しました。)




    1. 補充式オラクルSQLクエリ

    2. Oracle-重複を削除する

    3. mySQLトリガーは、コンソールの挿入後には機能しますが、スクリプトの挿入後には機能しません

    4. java.sql.SQLException:Io例外:壊れたパイプを再起動せずに回復する方法は?