关于ruby:如何让Haml与Rails合作?

关于ruby:如何让Haml与Rails合作?

How do I get Haml to work with Rails?

我试图让Haml与我的Ruby on Rails项目一起工作。 我是Ruby on Rails的新手,我真的很喜欢。 但是,当我尝试为视图添加aplication.html.hamlindex.html.haml时,我只会收到错误。

我使用NetBeans作为我的IDE。


Haml with Rails 3

对于Rails 3,您要做的就是将gem"haml", '3.0.25'添加到您的Gemfile中。无需安装插件或运行haml --rails .

只是:

1
2
$ cd awesome-rails-3-app.git
$ echo 'gem"haml"' >> Gemfile

这样就完成了。


上面的答案是随处可见的。您只需要在Gemfile中放入gem 'haml'

另一个未提及的提示:要使rails生成器使用haml而不是erb,请在config/application.rb中添加以下内容:

1
2
3
4
5
6
7
config.generators do |g|
  g.template_engine :haml

  # you can also specify a different test framework or ORM here
  # g.test_framework  :rspec
  # g.orm             :mongoid
end


首先,将haml作为gem安装在捆绑器中,方法是将其添加到Gemfile中:

1
gem"haml"

运行bundle install,然后确保您的视图以* .html.haml扩展名命名。例如:

1
2
3
4
5
6
7
8
9
`-- app
    `
-- views
        |-- layouts
        |   `-- application.html.haml
        `
-- users
            |-- edit.html.haml
            |-- index.html.haml
            |-- new.html.haml
            `-- show.html.haml

将haml添加到您的Gemfile中:

1
gem"haml"

如果您也想使用脚手架功能,请在您的开发组中添加haml-rails:

1
gem 'haml-rails', :group => :development

不要忘记运行:

1
$ bundle install

在尝试在Rails应用程序中使用haml之前,您可以验证是否正确安装了命令行可执行文件:

1
2
3
$ haml
%p
  %span Hello World!

然后按CTRL-D,您应该看到:

1
2
3
4
5
<p>

  <span>Hello World!</span>

</p>

首先,请确保您具有HAML gem。

1
gem list --local | grep haml

如果haml没有出现在列表中,请执行以下操作:

1
sudo gem install haml

然后从您的项目目录执行此操作:

1
2
# cd ../
# haml --rails <yourproject>

那应该安装了您需要的所有东西,并且HAML视图应该停止抱怨并正确解析。


这可能是一个老问题,但我认为答案是在https://github.com/indirect/haml-rails使用haml-rails


如果由于某种原因安装了haml,但haml无法启动。尝试

1
sudo ln haml /usr/bin/

在您的haml gem的bin目录中

由于某种原因,这在我的ubuntu 9.04 Jaunty上不会自动发生。


如果您使用的是Pow,则还需要重新启动它。理想情况下,您要使用粉末(宝石安装粉末),因为这样您就可以在终端上运行它了

1
$ powder restart

推荐阅读

    linux打包项目命令?

    linux打包项目命令?,项目,文件,命令,软件,数字,系统,名称,工具,目录,格式,Lin

    linux项目更新命令行?

    linux项目更新命令行?,工作,地址,系统,数据,信息,项目,标准,电脑,目录,命令,l

    linux命令错误的是?

    linux命令错误的是?,系统,信息,异常,密码,工具,地址,网络,实时,状态,数据,Lin

    linux显示错误命令?

    linux显示错误命令?,信息,系统,电脑,状态,时间,环境,命令,搜狐,密码,异常,虚

    linux退出错误命令的?

    linux退出错误命令的?,系统,电脑,环境,命令,位置,管理,工具,设备,终端,进程,L

    linux没有该命令错误?

    linux没有该命令错误?,系统,第一,环境,命令,分析,软件,异常,文件,目录,空格,

    linux命令关闭视图?

    linux命令关闭视图?,系统,状态,管理,百分比,信息,情况,基础,软件,观察,首次,

    linux命令错误代码?

    linux命令错误代码?,系统,密码,电脑,网络,手机,网址,软件,代码,设备,老板,Lin

    linux命令创建项目组?

    linux命令创建项目组?,管理,密码,项目,命令,系统,位置,文件,用户组,用户,文

    复制项目的linux命令?

    复制项目的linux命令?,系统,项目,文件,命令,目录,源文件,语法,选项,目标,功

    linux命令项目部署?

    linux命令项目部署?,项目,服务,环境,软件,系统,代理,管理,统一,做好,业务,怎

    linux命令忽略错误?

    linux命令忽略错误?,系统,地址,工作,信息,设备,命令,设计,灵活,观察,标准,lin

    linux删除视图命令?

    linux删除视图命令?,系统,软件,电脑,管理,地方,环境,地址,检测,情况,名称,ubu

    linux部署项目的命令?

    linux部署项目的命令?,项目,系统,设备,环境,工作,基础,传播,信息,标准,代码,L

    linux项目常用命令?

    linux项目常用命令?,工作,地址,系统,信息,管理,项目,命令,目录,标准,网络,lin

    linux项目更新命令?

    linux项目更新命令?,系统,信息,网络,地址,网站,通信,管理,时间,项目,命令,lin

    启动项目命令linux?

    启动项目命令linux?,工作,经理,产品,技术,地址,数字,系统,项目,命令,信息,怎

    linux编译项目的命令?

    linux编译项目的命令?,系统,工作,地址,软件,工具,信息,代码,项目,命令,环境,l

    项目linux常用命令?

    项目linux常用命令?,工作,地址,系统,管理,设备,信息,项目,命令,目录,标准,lin

    linux上部署项目命令?

    linux上部署项目命令?,项目,软件,服务,工具,环境,代理,地址,代码,首页,做好,l