2016-05-02 6 views
0

私はこのに走ったし、他人のためにそれを投稿したい:どのように列挙型のリストを取得しますか?

あなたはこのようなモデルがある場合:あなたは、アプリケーション内で利用できる「ステータス」(列挙型)のリストを取得するにはどうすればよい

class Conversation < ActiveRecord::Base 
    enum status: [ :active, :archived ] 
end 

を?

答えて

0

私はドキュメントでそれを見ていませんでしたが、それは単なるenumの複数形です。したがって、上記の例では、

Conversation.statuses  # {"active"=>0, "archived"=>1} 
Conversation.statuses.keys # ["active", "archived"] 
+0

[慎重に文書をお読みください](http://edgeapi.rubyonrails.org/classes/ActiveRecord/Enum.html)。 _まれに、マッピングに直接アクセスする必要があるかもしれません。マッピングは、**複数の**属性名を持つクラスメソッドを通じて公開され、HashWithIndifferentAccess_ –

+0

でマッピングを返します。Thanks @Зелёный! –

関連する問題