关于ruby:使用haml和erb

Using haml and erb

可以将haml用作erb的完全替代品,反之亦然吗?或者在某些特殊情况下应该使用hamb?

例如:用haml做X更好,用erb做Y更好。

我正在尝试尽快进入我的Web应用程序,如果不能避免,我现在真的不想立即学习两者。


我多年来几乎一直在许多项目上一直使用HAML。我不记得必须将任何HAML文件转换为ERB。

但是我可以想到一些更容易使用ERB的情况:

  • 与只懂HTML的人共享模板时。
  • 编写内容时,除非使用markdown之类的东西。
  • 导入现有的HTML(示例,旧版等)时。要转换它们,我直接在终端中使用html2haml
  • 当您需要完全控制输出HTML中的空白时。很少需要它,但是处理该问题的HAML语法不是很好。
  • 当您有许多ERB文件要转换为HAML时。其中的某些不能被html2haml --erb正确解析。
  • 很明显,当您不生成HTML时。例如,我使用ERB在Rails生成器中生成文本电子邮件。

非常确定HAML也可以用于所有内容。我建议您使用ERB入门。这要简单得多-直到您使用<%%>或<%=%>为止,所有内容都是HTML。

毫无疑问,有人会不同意我。