2016-04-25 23 views
1

ユーザーに挨拶メッセージを表示しようとしています。これまでのところ私が持っている:私の見解で時間ベースの挨拶メッセージの作成方法

def greet 
    now = Time.now 
    today = Date.today.to_time 

    morning = today.beginning_of_day 
    noon = today.noon 
    evening = today.change(hour: 17) 
    night = today.change(hour: 20) 
    tomorrow = today.tomorrow 

    if (morning..noon).cover? now 
    'Good Morning' 
    elsif (noon..evening).cover? now 
    'Good Afternoon' 
    elsif (evening..night).cover? now 
    'Good Evening' 
    elsif (night..tomorrow).cover? now 
    'Good Night' 
    end 
end 

私はこれを行うとき、私は私が私のメッセージを表示するかどうかはわかりません

undefined local variable or method `greet' 

エラーを取得し、しかし<%= greet %>を呼び出すようにしようとしています

<%= greet %>, <%= current_user.username %> 

答えて

2

HTMLテンプレートで使用できるようにするには、ヘルパーに追加する必要があります。それは一般的な方法なので、私はapp/helpers/application_helper.rbファイルを提案するかもしれません。これにより、テンプレートで使用できるようになります。

+0

OPに質問している場合は、コメントにする必要があります。回答はフィードバックや追加情報を求める必要はありません。 –

+0

質問を削除するように編集しました。本当に好奇心のため、今後の教育を提供する可能性があります。答えが提供されました。さて答えはそこにあります。 – Jocko

+0

ああ完璧ありがとう!私はこれについてもっと知ることができる場所を尋ねることはできますか? –

関連する問題