2017-08-17 14 views
0

私は、ユーザー入力に基づいてさまざまなアクションに対して定義された列挙値のグループを持っています。今私は、列挙型の値に基づいて文字列を渡す必要があります。それ、どうやったら出来るの?htmlのenum値に基づいてテキストを設定するにはどうすればよいですか?

enum status: { 
    signed_up: 0, 
    docs_uploaded: 1, 
    approved: 2, 
    rejected: 3 
} 
<div class="accountstatus"> 
    <p> <%= @current_user.status %> </p> 
</div> 

代わりにdivの中<%= @current_user.status %>を呼び出すので、私のようなものを列挙型に文字列値を割り当てる:

0:正常
1登録:
2、アップロードされたドキュメント:アカウントが承認
3:勘定拒否

+0

0,1,2,3の数字を意味のある文字列に変更するだけです。ちょうどうまくいくでしょう。 –

+0

@GillesLesire jQueryを使用して文字列だけを追加して、サイトの他の部分でも参照されているので、値をそのまま保持できますか? – Avid

答えて

0

翻訳ファイルを使用して文字列を表示します。後で、異なる言語の文字列をローカライズすることができます。

========================================

セカンドApproch

helper file : add method 

def get_status_name(code) 
    statuses = {"0" => "Successfully Registered", "1" => "Documents Uploaded", "2" => "Account approved", "3" => "Account rejected"} 
    return statuses["#{code}"] 
end 

<div class="accountstatus"> 
    <p> <%= get_status_name(@ current_user.status) %> </p> 
</div> 
+0

サイトの他の部分でも参照されているので、値をそのままにしてjQueryを使用して文字列だけを追加できますか? – Avid

+0

私は別のapprochを追加してください。 –

+0

tSTRING_CONTENTまたはtSTRING_DBEGまたはtSTRING_DVARまたはtSTRING_ENDステータス= {:0 => "SAwaiting Documents"、:1 ... ^/home/avid/webという次のエラー@Sachin R - >構文エラー、予期しないtINTEGERが発生しています。 /app/helpers/users_helper.rb:3:構文エラー、予期しない '、'、expecting keyword_end ... = {:0 => "SAwaiting Documents"、....すべての値の場合 – Avid

関連する問題