Ruby on Rails中Haml和Yaml有什么区别?

kga*_*har 0 ruby haml yaml ruby-on-rails

我是Ruby on Rails开发人员,从过去7个月开始研究这项技术.在处理Rails时,我遇到过很多次yaml文件.

我遇到yaml(yet another mark-up language)的用于存储在服务器启动之前需要加载的静态内容(如I18n语言翻译),有些用作存储'boolean'值的开关.

最近我haml在rails中看到过一些SO问题,据我所知,这两个问题都是标记语言.这两者之间的区别是什么,以及在使用rails时优先使用和不使用什么.

请详细说明:)

Jör*_*tag 9

他们彼此无关.

HAML是半结构化文档的标记语言.它的语义基本上等同于HTML,它的用法域是相同的.此外,HAML也是一种模板语言,它允许在通用编程语言(通常是Ruby)中嵌入任意代码,类似于ERb.

YAML是一种数据语言.它的语义比JSON更高一级(事实上,从YAML 1.2开始,YAML是JSON的正确超集,即每个JSON文档也是YAML 1.2文档)和XML下面的某个地方(作为纯数据语言,不是文档标记语言),但其使用域与这两者相同.

简而言之:HAML是HTML(和ERb)的替代品,YAML是JSON和XML的替代品.