2016-08-23 5 views
1

Ruby On Rails 4でドロップダウンが2つあり、その下にダウンロードボタンがあるページを作成しました。その年とその年のデータが存在する場合にのみダウンロードされるファイル、そうでなければ、私は次の方法で試してみました。テーブルにレコードが存在しない場合に、Flashメッセージを生成する

def index 
 
    @month = params[:salaryslip_component][:month] 
 
    @year = params[:salaryslip_component][:year] 
 
    @salary_components = SalaryComponent.all 
 
    @salaryslips = Salaryslip.where(month: @month,year: @year) 
 
    if @salaryslips.present? == true 
 
     respond_to do |format| 
 
     format.xml { send_data render_to_string(:index), :filename => 'mydoc.xml', :type=>"application/xml", :disposition => 'attachment' } 
 
     flash[:danger] = "Salaryslip processed" 
 
     end 
 
    else 
 
    flash[:danger] = "Salaryslip not yet processed" 
 
    end 
 
    end

....助けてください:)

+0

削除のflash[:error]を使うべきだと思います。 –

+0

まだ解決策はありません... –

答えて

0

まずあなたがpresent?チェックはデータがある場合ので、それはそれ以外の場合は、その状態でコードを実行します、@salaryslips.present?== trueを削除する必要がありますそれはコードを実行させません。

第2のフラッシュメッセージは、上記の問題から、3種類の flash[:notice] flash[:alert] flash[:error]

のものであり、私はあなたの場合の条件から「真==」の代わりにflash[:danger]

+0

私はあなたが指定した方法を試しましたが、まだ進歩はありません...途中で感謝....;) –

+0

あなたは他の方法があれば教えてください。 –

関連する問題