Comment ajouter une chaîne dans Ruby
Je suis en train de tout simplement ajouter un " /" à la fin de cette chaîne. Quelle est la meilleure façon de le faire?
>> params[:id]
"shirts"
Je voudrais faire params[:id] == "shirts/"
. Comment puis-je ajouter un /
à la fin de cette chaîne?
source d'informationauteur Trip
Vous devez vous connecter pour publier un commentaire.
Plus simple:
ou
Moar fantaisie:
Encore une autre façon de faire:
Si vous avez vraiment, vraiment pour certains bizzare raison d'insister sur gsub:
"Meilleur" dépend en grande partie de votre cas d'utilisation, mais considérons le code suivant:
Que nous nous attendons à
<<
a ajouté une barre oblique mais...Ainsi, en fonction de votre niveau de compréhension avec ces méthodes, c'est un comportement que vous ne vous attendiez pas. Comparer:
Fondamentalement, certaines méthodes permettent de créer de nouveaux objets et d'autres, de modifier les existants. On peut tester avec le object_id méthode.
Maintenant
Nous avons réussi à modifié str1 sans créer un nouvel objet et depuis str2 pointe toujours vers le même objet, il obtient également la "mise à jour". Enfin, si nous utilisons la
+=
méthode:Avis que nous, n'ont rien ajouté à str1 mais encore, elle crée un nouvel objet.
Comme ceci:
Pas gsub nécessaire 🙂
À moins que vous il y a peut être une barre oblique dans certains cas. Ensuite, utilisez:
Opérateur de pelles mécaniques?
Je pense que
params[:id] << "/"
devrait fonctionner.Si vous essayez de construire une URL de cette façon, vous êtes probablement faire de mal, mais je ne peux pas vous dire la bonne façon de le faire.
Si vous essayez de construire un chemin d'accès au répertoire de cette façon, et il y a d'autres bits pour le chemin d'accès, utilisez quelque chose comme
File.join
. Lien vers la documentation