Comment corriger l'erreur « Chemin d'affichage non traité trouvé » avec le plugin ExceptionNotifier dans Rails 2.1 ?
-
08-06-2019 - |
Question
Après la mise à niveau d'un site Web Rails 1.2 vers 2.1, le Plugin ExceptionNotifier ne fonctionne plus, je me plains de cette erreur :
ActionView :: TemplateFinder :: InvalidViewPath :Path de vue non transformée trouvée:"/path/to/appname/vendor/plugins/exception_notification/lib/../views".Définissez vos chemins d'affichage avec #append_view_path, #prepend_view_path ou #view_paths=.
Quelles sont les causes et comment y remédier ?
La solution
Vous devez effectuer une mise à niveau vers le dernier plugin de notification d'exception disponible dans sa nouvelle maison sur GitHub.
Autres conseils
Cela a été causé par un changement dans les rails 2.1 qui empêche les rails de charger des vues depuis n'importe quel chemin arbitraire pour des raisons de sécurité.
Il existe maintenant une version mise à jour du plugin sur github, la solution est donc de l'utiliser.
L'ancienne solution ici pour la postérité
Pour contourner ce problème, modifiez init.rb
sous ton vendor/plugins/exception_notification
répertoire et ajoutez le code suivant à la fin
ActionController::Base.class_eval do
append_view_path File.dirname(__FILE__) + '/lib/../views'
end
Cela ajoute le dossier des vues des plugins ExceptionNotifier à la liste, il est donc autorisé à les charger.