2013-03-17 4 views
0

월요일 일 경우 Ruby on Rails에 항상 표시되도록 특정 플래시 알림을 표시하려면 어떻게해야합니까?요일에 Rails 알림 표시

+0

월요일이 맞는지 확인하고 있다면 플래시에 넣으시겠습니까? 시스템 전체에서'before_filter'처럼? 메시지가 한 번만 나타나기를 원한다면 명확하지 않습니다.이 경우 메시지 당 한 명 (사용자)을 추적해야합니다. –

+0

요일이 월요일 인 경우 항상 표시하십시오. – alt

+1

사용자가 어떤 표준 시간대에 있는지 어떻게 알 수 있습니까? –

답변

1
def ApplicationController < ActionController::Base 
    before_filter :show_message_if_today_is_monday 

    # rest of your ApplicationController code 

private 

    def show_message_if_today_is_monday 
    flash[:notice] = "Your message here" if Time.now.monday? 
    end 
end 
+2

하지만 'Time.now'가 서버 시간이 될 것입니다. 사용자가 4 시간 또는 5 시간 차이가 있다면 어떻게 될까요? – fmendez

0

datetime에 다형성이있는 데이터베이스에 알림 모델을 포함 할 수 있습니다. 이 모델에서, 당신은 당신의 애플리케이션 컨트롤러에서 네 개의 필드를

source_type: date, time and/or date & time 
source_trigger: value of the source type 
notification_message: message that you want to display 
notification_styling: css styling 

가질 수있다, 당신은 알림 모델의 레코드가 표시 여부를 결정 할 수있는 도우미 메서드를 호출 할 수 있습니다. 이렇게하면 화요일 메시지, 12:00 PM 메시지 또는 날짜와 시간 메시지를 표시해야 할 때 사용할 수 있습니다.

응용 프로그램 레이아웃에서이 알림 인스턴스 변수를 호출하여 메시지 알림을 표시 할 수 있습니다.