La résolution de cette Erreur
Pour résoudre cette erreur, vous devez assurez-vous que le tzinfo-données gem est inclus dans votre Gemfile
.
Tout d'abord, vérifiez votre Gemfile
pour voir s'il existe une référence à l' tzinfo-data
. Si il n'y a pas déjà une référence, puis ajoutez la ligne suivante:
gem 'tzinfo-data'
Vous pouvez trouver qu'il existe déjà une ligne comme la suivante:
gem 'tzinfo-data', platforms: [:mingw, :mswin]
Si vous utilisez une version 64 bits de Ruby sur Windows, puis ajouter :x64_mingw
à la liste des plates-formes comme suit:
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw]
Alternativement, vous pouvez supprimer l' platforms
option tout à fait.
Après cela, exécutez bundle update
à la ligne de commande pour installer le tzinfo-données gem et vous serez alors en mesure de démarrer votre serveur Rails ou de la console.
Arrière-plan
L' TZInfo::DataSourceNotFound
d'erreur est élevé par TZInfo, une dépendance de l'Appui Actif de la composante de Rails. TZInfo est à la recherche d'une source de données de fuseau horaire sur votre système, mais faute d'en trouver un.
Sur de nombreux systèmes Unix (par exemple Linux), TZInfo est en mesure d'utiliser le système zoneinfo répertoire en tant que source de données. Cependant, Windows ne comprend pas un tel répertoire, de sorte que le tzinfo-données gem doit être installé à la place. Le tzinfo-données gem contient les mêmes zoneinfo de données, emballé comme un ensemble de modules Ruby.
Rails génère un défaut Gemfile
lorsque la demande est d'abord créé. Si l'application est créé sur Windows, puis une dépendance pour tzinfo-les données seront incluses. Toutefois (comme les Rails de la version 4.1.0), il omet :x64_mingw
à partir de la liste des plates-formes, donc ne fonctionne pas correctement sur Windows 64-bit versions de Ruby. Cela devrait être corrigé dans les futures Rails de presse.