PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Bagaimana cara memetakan atribut integer model ke string?

Centang enum dari ActiveRecord - doc .

Di sini Anda dapat mengonfigurasi :status :

class Hotel < ActiveRecord::Base
  enum status: { waiting_contract: 1, designing: 2 }

  def format_status
    status.to_s.humanize
  end
end

Ini akan membuat metode seperti ini:

hotel.waiting_contract?
hotel.designing?

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

Semoga membantu!

PERBARUI

Fungsionalitas serupa dapat dicapai dengan mengganti status metode itu sendiri, meskipun memiliki metode terpisah lebih disarankan:

class Hotel < ActiveRecord::Base
  enum status: { waiting_contract: 1, designing: 2 }

  def status
    super.to_s.humanize
  end
end

Selanjutnya, dekorator adalah sesuatu yang harus Anda perhatikan untuk metode khusus tampilan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgres Docker tidak menjalankan file init di docker-entrypoint-initdb.d

  2. PostgreSQL - nilai serial berikutnya dalam sebuah tabel

  3. PostgreSQL setara dengan pengumpulan massal Oracle

  4. dapatkah Anda menggunakan perpustakaan di PL/Perl

  5. Bagaimana make_date() Bekerja di PostgreSQL