Как вернуть HTTP 204 в контроллер Rails

Это, кажется, базовое, но я новичок Ruby/Rails. Мне нужно просто вернуть HTTP 204 в контроллер. Будет

respond_to do |format|
      format.html  
 end

вернуть 204?

Ответы

Ответ 1

head :no_content

Протестировано с Rails 3.2.x, 4.x. Это приводит к тому, что метод контроллера отвечает кодом статуса содержимого HTTP без содержимого.

Пример использования этого метода контроллера с именем foobar:

def foobar
  head :no_content
end

Ответ 2

Посмотрите на метод head:

Возвращает ответ, у которого нет содержимого (только заголовки). Варианты аргумент интерпретируется как хэш заголовков и значений заголовков.

Ответ 3

Если вы вообще ничего не хотите делать, вы можете сделать это:

render :nothing => true, :status => 204

или вот так:

render :nothing => true, :status => 204 and return

Или вы можете использовать часть :status => 204 с любой другой командой рендеринга