web-dev-qa-db-fra.com

Que signifie require_self?

Dans Rails3.1 application.css nous pourrions voir

/*
 *= require_self
 *= require_tree .
*/

Je le sais require_tree . indique simplement au système de regrouper tout ce qui se trouve dans le dossier des feuilles de style en un seul fichier.

Mais qu'est-ce que require_self raconte?

59
kriysna

De http://guides.rubyonrails.org/asset_pipeline.html :

/* ...
*= require_self
*= require_tree .
*/

"Dans cet exemple require_self est utilisé. Cela placera le CSS contenu dans le fichier (le cas échéant) en haut de tout autre CSS de ce fichier, sauf si require_self est spécifié après une autre directive require. "

65
shedd

La réponse de Shedd était correcte, mais maintenant le sens a changé très légèrement;

Encore une fois, à partir de http://guides.rubyonrails.org/asset_pipeline.html (en gras le mien):

Dans cet exemple, require_self est utilisé. Cela place le CSS contenu dans le fichier (le cas échéant) à l'emplacement précis de l'appel require_self . Si require_self est appelé plusieurs fois, seul le dernier appel est respecté.

Vous pouvez donc avoir require_self à tout moment, et tout CSS que vous avez dans le fichier sera injecté dans le point que vous avez écrit require_self

20
Toby
//= require_self

Il charge le fichier lui-même, pour définir l'ordre de chargement des fichiers.

13
rafamvc