【问题标题】:Rails 3.1.0 Problems using haml - Missing template errorRails 3.1.0 使用 haml 的问题 - 缺少模板错误
【发布时间】:2012-06-08 00:19:43
【问题描述】:

我正在尝试在我的项目中使用 haml,我有一个控制器类和一个视图模板 .html.haml

这是我的 gemfile:

source  "http://rubygems.org"
#use Haml for templates
gem 'haml' '3.1.6'
#use Ruby debugger
group :development, :test do
gem 'ruby-debug19'
end
group :assets do
gem 'therubyracer'
end

我多次运行bundle install并重新启动rails服务器,但haml甚至没有出现在bundle show中。

我用 gem 更新了 haml,还是没有结果。

haml --rails 不起作用 - 无效选项

vendor/plugins 文件夹为空

如果我运行 rails server 并打开“http://localhost:3000/myindex”,我有一个控制器和一个视图模板,我得到模板错误

Missing template movies/index, application/index with {:handlers=>[:erb, :builder, :coffee], :formats=>[:html], :locale=>[:en, :en]}. Searched in:

处理程序中根本没有haml。

我尝试添加

config.generators do |g|
      g.template_engine :haml
     end

到 config/application.rb。没用

在网上搜索了一整天,阅读了很多建议,但都没有帮助。

bundle 只是拒绝正确安装 haml gem。没有将其指示为错误。它只是忽略了宝石。

哦,我在我的模板上运行了 haml index.html.haml:html 已完美生成。出于测试目的,我把它做得非常简单。

Rails v:3.1.0

Ruby v:1.9.2p290

haml v: 3.1.6

【问题讨论】:

    标签: ruby ruby-on-rails-3 haml


    【解决方案1】:

    使用haml-rails 而不是haml。并删除版本字符串或添加逗号:

    gem 'haml-rails'
    # or potentially
    gem 'haml-rails', '3.1.6'
    

    【讨论】:

    • 而且你不需要config.generators 的东西。
    • 这是我的新 gemfile: source "rubygems.org" #use Haml for templates gem 'haml-rails' #use Ruby debugger group :development, :test do gem 'ruby-debug19' end group :assets do gem 'therubyracer' end
    • bundle install 没有安装任何新东西,bundle show 没有显示 haml=(
    • 您能否将完整的GemfileGemfile.lockbundle 的输出粘贴到某处(可能是gist.github.com)并将其链接到此处?
    • 这里只能贴一个代码,不知道怎么通过纯文本终端在gits上上传文件=(
    【解决方案2】:

    我找到了原因。 当我不得不编辑现有的“Gemfile”时,我创建了一个新文件“gemfile”,区分大小写! 所以 bundle 只是读取了错误的文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-09-08
      • 1970-01-01
      • 1970-01-01
      • 2015-04-20
      • 1970-01-01
      • 1970-01-01
      • 2016-02-25
      相关资源
      最近更新 更多