Ten kod w szynach 5
class PagesController < ApplicationController
def action
render nothing: true
end
end
powoduje wyświetlenie następującego ostrzeżenia o wycofaniu
DEPRECATION WARNING: :nothing` option is deprecated and will be removed in Rails 5.1. Use `head` method to respond with empty response body.
Jak to naprawić?
ruby-on-rails
ruby-on-rails-5
Linus Oleander
źródło
źródło
head
, to wszystko. Nadal musisz sprawdzić używany interfejs API. Zwróć uwagę, że jest to post w stylu pytań i odpowiedzi, którego celem jest szybkie rozwiązanie powyższego ostrzeżenia o wycofaniu bez konieczności czytania przez oficjalny interfejs API. Ten post jest obecnie na pierwszym miejscu w Google na powyższe ostrzeżenie, co było moim początkowym celem.Odpowiedzi:
Według źródła szyn odbywa się to pod maską podczas przejazdu przez
nothing: true
szyny 5.Wystarczy zastępując
nothing: true
zebody: nil
powinno rozwiązać problem.alternatywnie możesz użyć
head :ok
źródło
head
Metoda jest korzystna składni. Dużo czystsze.render body: nil
zadziałało dla mnie,render head :ok
nie (spowodowało to podwójny błąd renderowania).:ok
guide.rubyonrails.org/…head :unauthorized
zwrócenie kodu statusu 401render head: :ok
, to jesthead :ok
. Nierender
. Ja też z tym walczyłem.