93 votes

Que faut-il utiliser à la place de `render: text` (et` render rien: true`) dans les rails 5.1 et ultérieurs?

Rails 5.1 supprime toute une charge de méthodes précédemment déconseillées . Parmi eux se trouve le vieil ami render :text .

Cela était très utile lorsque vous avez besoin de restituer du texte, mais ne souhaitez pas la surcharge d'un modèle de vue. Exemples:

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

Quoi utiliser à la place?

189voto

Sergio Tulentsev Points 82783

Le non-déconseillé façon est d'utiliser des render :plain

Rails de Guide sur les Mises en page et le Rendu:

2.2.6 Le Rendu De Texte

Vous pouvez envoyer du texte brut, sans balisage à tous - retour vers le navigateur à l'aide de l' :plain option de rendu:

render plain: "OK"

Bonus

Au lieu de render nothing: true (également supprimé), il faut maintenant utiliser head :ok. Fait la même chose: envoie le code de réponse http 200, uniquement les en-têtes, pas de contenu.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X