Je ne suis pas sûr à 100% du fonctionnement de la portée des variables Ruby, et j'ai du mal à utiliser la fonction require "path.rb"
déclaration. Voici un extrait de code qui cause le problème :
Fichier a.rb :
a = {
:hey => "ho"
}
require "path/to/b.rb" # => true
Fichier b.rb :
b = "harhar"
a[:test] = b
Le champ d'application de la a.rb
se trouve à l'intérieur d'un module::class, et non dans la portée globale principale, et lorsque j'essaie d'accéder à l'objet a
variable dans b.rb
Je reçois une erreur disant que le a
n'est pas dans la portée actuelle.
J'ai lu quelque part que les fichiers inclus devaient être dans leur propre champ d'application afin de ne pas entrer en conflit. Si c'est le cas, quelle est la convention pour contourner ce problème ?