Comment obtenir le chemin du répertoire racine de mon application Rails?
ruby-on-rails
fivetwentysix
la source
la source
Rails.root.join(*%w( app assets images logo.png ))
.Rails.root / 'app' / 'assets' / 'images' / 'logo.png'
Pour une super justesse, vous devez utiliser:
qui permettra à votre application de fonctionner sur des plates-formes où
/
n'est pas le séparateur de répertoire, si quelqu'un essaie de l'exécuter sur une seule.la source
Rails.root.join('foo','bar')
évalue l'objet Pathname dont le @path est '/ Users / purplejacket / my_rails_app / foo / bar'Vous pouvez accéder au chemin de l'application rails à l'aide d'une variable
RAILS_ROOT
.Par exemple:
la source
En plus de toutes les autres bonnes réponses, puisqu'il
Rails.root
s'agit d'unPathname
objet, cela ne fonctionnera pas:Vous pourriez utiliser quelque chose comme
join
Si vous voulez une chaîne, utilisez ceci:
la source
Rails.root + 'app/assets'
ça marche, mais oui,join
c'est plus propre.Dans certains cas, vous souhaiterez peut-être la racine Rails sans avoir à charger Rails.
Par exemple, vous obtenez un cycle de rétroaction plus rapide lorsque les modèles TDD qui ne dépendent pas de Rails nécessitent
spec_helper
au lieu derails_helper
.Ce qui vous permet de charger facilement des objets Ruby Old Plain à partir de leurs fichiers de spécifications.
la source
Vous pouvez utiliser:
Mais pour rejoindre les actifs, vous pouvez utiliser:
J'espère que cela vous aidera.
la source
Simplement par Rails.root ou si vous voulez ajouter quelque chose, nous pouvons l'utiliser comme Rails.root.join ('app', 'assets'). To_s
la source
Simplement en écrivant Rails.root et en ajoutant n'importe quoi par Rails.root.join (*% w (actifs de l'application)). To_s
la source