尽管指定404,Rails respond_with总是返回状态代码200

时间:2016-09-08 23:15:53

标签: ruby-on-rails ruby-on-rails-4

我有一个简单的操作来测试促销代码是否存在并返回它,如果是这样的话:

class PromoCodesController < ApplicationController

  respond_to :json

  def check
    code = params[:code]

    @promo_code = PromoCode.where(code: code).uniq

    if @promo_code
      respond_with @promo_code
    else
      respond_with nil, status: :not_found
    end
  end

end

当它不存在时,我以为我会返回404状态代码,但是当我查看开发工具的网络选项卡时,我总是得到200.

出现这种情况的原因是什么?在这种情况下返回404是不好的做法吗?

我在Rails 4上。

0 个答案:

没有答案