Что использовать вместо `render: text` (и` render nothing: true`) в rails 5.1 и более поздних версиях?

Rails 5.1 удаляет всю загрузку ранее устаревших методов. Среди них старый друг render :text.

Это было очень полезно, когда вам нужно отобразить какой-либо текст, но не хотите накладных расходов на шаблон представления. Примеры:

render text: "ok"
render text: t('business_rules.project_access_denied'), status: 401

Что использовать вместо этого?

Ответы

Ответ 1

Не устаревший способ заключается в использовании render :plain

2.2.6 Текст рендеринга

Вы можете отправить обычный текст без разметки - обратно в браузер с помощью параметра :plain для рендеринга:

render plain: "OK"

Bonus

Вместо render nothing: true (также удаляется), теперь следует использовать head :ok. То же самое: отправляет код ответа HTTP 200, только заголовки, без содержимого.