Steps of replacing erb with haml
1. 最最重要的: HAML 的注释: -# 。可以在替换的时候,先把原来的代码加成注释。 然后再慢慢改~~~
2. HAML 模板中,不允许出现HTML 等等代码,所以建议先把全文都 -#, 然后再一点一点改。
3. HAML is more a structure language, 所以, :
erb: <p> This <%= technology %> is <%= a_littel %> funcy, with <%= somehow... %> shorthand</p>
==
haml:
%p "This #{technology} is #{a_littel} functy..."
=== 注意! 下面的办法不推荐。
改成HAML 就得是(大概吧,以我目前的理解,估计再找找文档应该有解决方案)
HAML:
%p This
= technology
is
= a_littel
funcy, with
= somehow
shorthand
OK,下面开始 记录我的HAML 替换 ERB 的步骤:
div id = 'ooxx' => #ooxx
div id='ooxx' class='enen' => #ooxx.enen
ul => %ul
div style ="abc" => %div { :style => "abc"}
HTML 注释:
<!-- comments --> => / comments
执行RUBY 代码:
<% if true %>
<p>123456</p>
<% end %>
变成: (没有 end ,通过缩进来实现BLOCK的结束)
- if true
%p 123456
<%= current_user.name %> => =current_user.name
javascript:
<script> alert('hi') </script>
:javascript
alert('hi')
HAML 注释要跟上面的缩进一致。 否则会出现:
Illegal nesting: content can't be both given on the same line as %div and nested within it.
a. 正确的:
#some_id.some_class Hello moto!
-# some code here....
b. 错误的:
#some_id.some_class Hello moto!
-# some code here.... (注意这一行有缩进)
A line of Ruby code can be stretched over multiple lines as long as each line but the last ends with a comma. For example:
= link_to_remote "Add to cart",
:url => { :action => "add", :id => product.id },
:update => { :success => "cart", :failure => "error" }
Attribute hashes can also be stretched out over multiple lines to accommodate many attributes. However, newlines may only be placed immediately after commas. For example:
%script{:type => "text/javascript",
:src => "javascripts/script_#{2 + 7}"}
分享到:
相关推荐
除草剂 用Haskell编写的HAML到ERB转换器。 该程序将模板转换为 。 为什么 很多人更喜欢HAML而不是ERB。 但不是每个人,也不是每个情况都如此。...但是,使用Haskell,可以为HAML标记编写一个相当不错的解析器-翻
此外,HAML还支持内联样式和脚本,以及与其他模板语言(如ERB或JSP)的集成。 接下来,SASS是CSS的预处理器,它引入了变量、嵌套规则、混合(mixins)、函数等特性,让CSS代码更具有模块化和可复用性。比如,你可以...
哈姆 Haml是HTML的模板引擎。...基本用法Haml可以从命令行使用,也可以作为Ruby ... gem 'haml' 如果您想用Haml替换基于Rails基于Erb的生成器,请将也添加到您的Gemfile中。格式化Haml的最基本元素是创建HTML的简写: % ta
当我们想要脚手架生成Haml而不是ERB(Embedded Ruby)模板时,我们需要进行一些配置或使用特定的插件。 描述中提到的博客链接可能详细介绍了如何实现这个过程。由于没有直接的描述内容,我们将根据常见的做法来解释...
4. **与Rails的集成**:Haml与Ruby on Rails框架结合紧密,提供了便捷的视图层开发体验,如erb模板的无缝切换。 5. **扩展性**:Haml支持Sass,一个强大的CSS预处理器,共同为开发者提供了一整套优雅的前端开发工具...
Haml2Html 一个易于使用的编译器,用于使用Haml&Sass开发静态页面。要求需要以下内容:安装将存储库克隆到本地计算机。 在您的终端中,导航到/haml2html 。 跑步 ./install这将检查需求并安装未安装的需求。用法将...
安装完成后,你可以在 PHP 代码中引入 `MtHaml` 并使用它来编译 HAML 文件。以下是一个简单的示例: ```php require_once 'vendor/autoload.php'; use MTHaml\Haml; $haml = new Haml(); $html = $haml->render('...
为了使用这个项目,开发者需要了解Haml的基本语法,熟悉JavaScript和CoffeeScript,并且懂得如何在他们的前端项目中引入和使用外部库。同时,理解如何配置和运行构建工具也是必要的。对于希望提高前端开发效率,尤其...
使用 HAML 语法和 Twig 编写您的主题模板; 您可以混合使用旧版 PHP 模板和 Twig+HAML 模板,因此如果您要将现有主题迁移到 Twig+HAML,则可以一次完成一个模板。 为了保持代码和模板整洁,您的 PHP 主题代码应该只...
本项目是基于Ruby的Haml模板引擎设计源码,包含149个文件,主要文件类型为rb、haml、xhtml、erb、x、md、gitignore、gitmodules、yml和yardopts。该项目适用于Haml模板引擎的开发和设计,为用户提供了一个丰富的资源...
Scalate是基于的模板引擎,它支持HAML,Mustache和JSP,Erb和Velocity样式语法。 支持以下模板语言: :是Java / Scala的Mustache模板语言:Haml / Scaml模板语言的翡翠风格 :提供Haml样式模板语言 :提供JSP,Erb...
尽管Erubi提供了简洁和高效的ERB实现,但Ruby社区中还有其他模板引擎,如Haml、Slim和Erbb。它们各有优缺点,适用于不同的场景。例如,Haml以其清晰的缩进和HTML抽象获得了开发者喜爱,而Slim则以更紧凑的语法和更快...
它是为临时使用而创建的,直到转换为Jade。 此自述文件基于自述文件。 设置 添加到您的webpack配置模块.loaders: { test: /\.html\.haml$/, loader: "ruby-haml" } 渲染模板 webpack / assets / javascripts / ...
您需要同时安装Ruby和Haml才能使用此功能。 尝试gem install haml 。 如果使用 ,请将gem 'haml'添加到Gemfile中,然后运行bundle install 。 选件 hamlPath 指定haml可执行文件的位置。 如果未提供,则默认为haml...
- **解析HAML**: MtHaml能够解析HAML语法,将其转换为标准的HTML代码,方便在Web应用中使用。 - **自定义标签**: 支持自定义标签和过滤器,可以扩展到处理PHP或其他服务器端语言生成的内容。 - **性能优化**: 通过...
to_spreadsheet to_spreadsheet允许您的Rails 3+应用程序使用现有的slim / haml / erb / etc视图呈现Excel文件。安装将其添加到您的Gemfile中: gem 'to_spreadsheet'用法在控制器中: # my_thingies_controller....
Laravel Blade 和 HAML 的结合使用则为开发者提供了另一种更加结构化的视图编写方式。 **一、Laravel Blade 介绍** 1. **基础语法**:Blade 语法以 `@` 符号开头,例如 `@if`, `@foreach`, `@endphp` 等。这使得 ...
标题中的“Notebook:使用Ruby on Rails,HAML和CSS的笔记本应用”表明这是一个使用特定技术栈构建的在线笔记本应用。这个应用的核心是Ruby on Rails框架,它是一个强大的、基于模型-视图-控制器(MVC)架构模式的Web...
不推荐使用 我学到了很多东西,但是我已经前进了。 我不想在人们使用它的情况下将其删除,但是我将共享我的Middleman版本。 埃马耶尔 一个Jekyll实例,用于使用Haml离线组织和构建HTML电子邮件 依存关系 入门 ...
它还试图成为一个微小的框架,用于定义要在Rails,Sinatra或任何其他框架的ERB和HAML模板中使用的视图助手。 它提供了一个mixin,用于从任何类内联构建HTML标记或定义具有所有面向对象编程优势(例如继承和封装)的...