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

モデルの整数属性を文字列にマップするにはどうすればよいですか?

    enumを確認してください ActiveRecordの - doc

    ここで、:statusを構成できます :

    class Hotel < ActiveRecord::Base
      enum status: { waiting_contract: 1, designing: 2 }
    
      def format_status
        status.to_s.humanize
      end
    end
    

    次のようなメソッドが作成されます:

    hotel.waiting_contract?
    hotel.designing?
    
    hotel.waiting_contract!
    hotel.format_status # => "Waiting contract"
    

    お役に立てば幸いです。

    更新

    statusをオーバーライドすることで、同様の機能が実現される可能性があります メソッド自体。ただし、個別のメソッドを使用することをお勧めします。

    class Hotel < ActiveRecord::Base
      enum status: { waiting_contract: 1, designing: 2 }
    
      def status
        super.to_s.humanize
      end
    end
    

    さらに、デコレータ ビュー固有のメソッドについて調べる必要があるものです。



    1. phpエコーが機能していません

    2. テーブルの作成後にdjangoDATABASE_OPTIONSのinit_commandsetengine =INNODBを削除するのはなぜですか?

    3. 過度のMySQLアクティビティ

    4. #1273-不明な照合:'utf8mb4_unicode_ci' cPanel