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

Jak zmapować atrybut liczby całkowitej modelu na ciąg?

Sprawdź enum z ActiveRecord - dokument .

Tutaj możesz skonfigurować swój :status :

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

  def format_status
    status.to_s.humanize
  end
end

Utworzy takie metody:

hotel.waiting_contract?
hotel.designing?

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

Mam nadzieję, że to pomoże!

AKTUALIZUJ

Podobną funkcjonalność można osiągnąć poprzez nadpisanie status samą metodę, chociaż bardziej zalecane jest posiadanie oddzielnych metod:

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

  def status
    super.to_s.humanize
  end
end

Ponadto dekoratory są czymś, na co powinieneś zwrócić uwagę, jeśli chodzi o metody specyficzne dla widoku.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Poszukiwanie odpowiedniej struktury EAV opartej na jsonb

  2. Problem z projektem JPA w środowisku Eclipse - błąd w klasie z adnotacją @Entity:Tabela xxx nie może zostać rozwiązana

  3. Wybierz liczbę odpowiedzi MCQ na podstawie odpowiedzi na poprzednie pytanie

  4. Jak przeskoczyć z innymi kolejnymi rekordami po osiągnięciu stanu?

  5. błąd pg instalacji gem:nie można zrozumieć wersji kern.osversion `14.0.0' na Yosemite z Ruby 2.1.5