我在全新安装的 Snow Leopard 上安装了 Ruby on Rails。在与 MySQL 和 Sphinx 问题作斗争(并击败)之后,我陷入了与 HAML 相关的愚蠢错误。
本质上,对于每个使用 HAML 的视图,我都会收到缺少模板的错误。我可以添加一个空白的 xxx.html.erb 文件,并且(空白)页面加载正常。但是 xxx.html.haml 会抛出错误,即使该文件肯定存在于相应的目录中。
这是来自开发服务器的错误:
ActionView::MissingTemplate (Missing template sections/index.erb in view path app/views):
haml (2.2.4) rails/./lib/sass/plugin/rails.rb:19:in `process'
我正在使用 haml gem (2.2.4)、rails gem (2.3.4) 和 ruby 1.8.7。我确实运行了 haml --rails 。从我的 RoR 应用程序根目录;初始化文件位于 vendor/plugins/haml 目录中。我已经通过 IRB 确认“需要'haml'”=> true。
任何帮助,将不胜感激!
回应亚拉赫:
尝试卸载并重新安装,除了 rdocs(“找不到主页 README.rdoc”)之外没有引发任何错误。
在脚本/控制台中:
>> require 'haml'
=> []
更新:
在此项目中安装已知可与 HAML 一起使用的旧版 Rails 似乎已“解决”了该问题。我仍然很想听到这个问题的真正答案——我不想被困在 2.3.2 上。
sudo gem install -v 2.3.2 rails
更新 2:
这肯定是由 Rails 2.3.2 和 2.3.4 之间的差异引起的。安装两个 gem 后,我可以设置在我的 environment.rb 文件中使用的。HAML 与 2.3.2 一起工作正常,并且如 2.3.4 所述中断。