191 votes

Que faire le &, <<, * moyenne dans ce fichier Database.yml database.yml ?

Jusqu'à présent j’ai seulement utilisé/Database.yml database.yml avec chaque paramètre appelé explicitement, dans le fichier ci-dessous, qu'il utilise des caractères que je ne comprends pas. Ce que chaque ligne et symbole (&, *, ``

232voto

paukul Points 1856

L' & marques un alias pour le nœud (dans votre exemple, &default alias le nœud de développement comme "par défaut") et l' * références alias nœud avec le nom "default". L' <<: insère le contenu de ce noeud.

Permettez-moi de citer le YAML spec ici:

Répété nœuds (les objets) sont d'abord identifiés par un point d'ancrage (marqué avec l'esperluette - "&"), et sont ensuite lissés (référencé par un astérisque "*") par la suite.

si certaines parties de votre exemple

test: &test
  <<: *default

en fait étendre à

test: &test
  adapter: postgresql       # from the "default" alias
  database: dev_development # from the "default" alias

et en même temps faire le "test" nœud disponible sous le pseudo "test". avoir un regard sur les spécifications YAML - 2.2 Structures pour de plus amples détails (ou si vous avez besoin d'encore moar docs++: 3.2.2.2. Les ancres et les Alias)

17voto

keymone Points 3947

``signifie que vous êtes étiquetage ce jeu d’attributs avec un nom pour une utilisation ultérieure

``: vous êtes ainsi que tous les attributs du groupe appelé par défaut

11voto

Sam Ruby Points 3211

Il s’agit de références de nœud (*) et fusionne un tableau associatif (wikipedia

Essayez-le vous-même en ligne.

3voto

Dark Passenger Points 18408

Ils sont un moyen d’environnements de référence sans avoir à répéter les mêmes paramètres de plus et plus (sécher vers le haut).

``crée une référence à ces paramètres spécifiques.

``dit utiliser les paramètres par défaut pour l’essai

Alors maintenant, nous savons que pour nous voulons utiliser les paramètres de .

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