0
votes

Quelle est la bonne façon de mettre ce morceau de code dans Ruby?

J'ai besoin de connaître la bonne façon de taper ceci: Environnement :: Sandbox Code> ou Environnement :: Sandbox Code>?

Edit: J'ai vu vos commentaires, peut-être que si je tape dans le code que j'ai utilisé, je vais obtenir un meilleur Réponse? P>

require_relative 'lib/gocardless_pro'

    @client = GoCardlessPro::Client.new(
        access_token: ENV['GOCARDLESS_TOKEN'],
        # environment: :sandbox or environment::sandbox?
    )


2 commentaires

Ceux-ci signifient deux choses différentes. Nous devrions connaître le contexte.


@Schwern: En fait, ils signifient quatre à cinq choses différentes. Le premier seul signifie trois à quatre. (Selon la façon dont vous comptez.)


3 Réponses :


1
votes

Très probablement, il est Environnement :: Sandbox , où vous définissez une clé de hachage Environnement Pour maintenir la valeur : Sandbox , qui est ce qui est a Symbole Symbore .

Votre confusion vient probablement du fait que Module :: Classe est la syntaxe valide, mais votre exemple en minuscule n'est pas une syntaxe valide, et je devine du contexte de votre question que vous n'éjectez pas Pour utiliser un Séparateur d'espace de noms .


0 commentaires

1
votes

Les deux sont corrects, mais seul le second est une expression généralement valide. Le premier n'est valable que dans trois contextes limités où cela signifie trois à quatre choses différentes.

Le premier est une solution alternative d'écrire le message Envoyer l'opérateur .

Le second peut signifier:

  • dans un hash littéral : une paire avec clé : environnement et valeur : Sandbox .
  • dans une liste de paramètres : un paramètre facultatif de mots-clés environnement avec argument par défaut : sandbox < / code>.
  • dans une liste d'arguments : a argument de mot-clé environnement avec valeur : sandbox ou
    • à l' très fin d'une liste d'arguments: une paire de valeur de clé avec clé : environnement et valeur : sandbox qui fait partie de Un HASH Valeur lié à la dernière argument de position .

      Cependant, étant donné que vous n'avez réellement ni un Liste littérale ni une liste de paramètres ni une liste d'arguments dans votre code, il s'agit simplement d'un syntaxError . .


0 commentaires

0
votes
    @client = GoCardlessPro::Client.new(
        access_token: ENV['GOCARDLESS_TOKEN'],
        environment: :sandbox
    )

1 commentaires

Merci d'avoir répondu!