1.% 是一行的开始 紧跟着一个元素的名字 %one 对应html中的<one></one>
%three Hey there 对应html中<three>Hey there</three>
2.{} 括号内的ruby hash 是用来指名一个元素的属性 %head{:name=>”doc-head”} 对应HTML中的 <head name=“doc-head”></head>
3.方括号[] 跟在一个标签定义之后,包含一个Ruby 对象,用来为标签设置class和id属性
例子: def show
@user=CrazyUser.find(15)
end
%div[@user]
对应html 中<div class=“crazy_user” id=“crazy_user_15”>
4./ 放在一个tag定义之后,可以让这个标签自我关闭
%br/ 对应html 中的<br />
5..and # 这两个符号是从css 里借鉴来的。他们被用来表示一个元素的class和id 属性。 %div# things 对应html中<div id=“things”></div>
6.= 用来插入ruby代码的值到模板中
7.!!! 可以通过该符号来自动生成文档类型 !!!XML 最终的结果就是
会把文件自动解析为xml 对应html 中的<?xml version=“1.0” encoding=“utf-8”?>
8./ 用来做注释用的
9.\反斜杠符号允许字符串前面的第一个符号作为纯文本使用
\-MySite 对应html中的-MySite
10.| 管道符可以把输出为一行的内容写成多行
11.:冒号 指定一个过滤器。冒号后面是你要使用的过滤器的名字
- 点(.)对应的就是html 中的class #就是html 中的ID
- 编写简单的表单,最基本的表单帮助方法是:form_tag 当其中不传入参数时,from_tag 会创建一个表单<from>标签,向当前页面发起POST请求。在表单中还会默认的隐藏两个DIV标签,其中隐藏两个input元素 第一个input 中name属性值 为utf-8其作用是强制浏览器使用指定的编码。第二个input元素的name 属性值为 authenticty_token 这是Rails的一项安全措施
- 常见的标签以及对应html中的标签 表单标签 from_tag label 标签 label_tag 文本框标签 text_field_tag
例子:<%=form_tag(“/search”,method:”get”) do %>
<%=label_tag(:q,”Search for:”)%>
<%=text_field_tag(:q) %>
<%=submit_tag(“Search”)%>
<%end%>
对应html 中
<form accept-charset="UTF-8" action="/search" method="get">
<div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓" /></div>
<label for="q">Search for:</label>
<input id="q" name="q" type="text" />
<input name="commit" type="submit" value="Search" />
</form>
15 视图渲染 创建响应http 有三种方法:
调用 render方法,向浏览器发送一个完整的响应
调用redirect_to方法,向浏览器发送http重定向状态码
调用head方法 ,向浏览器发送只含报头的响应
.builder 文件是标准的xml Builder模板(xml)生成器
16.rails 为表单中控件提供了很多帮助方法 ,所有的都是一标签名_tag 这种形式,所有标签的第一个参数就是name 属性值。提交表单后,name 属性值会随表单中的数据一起传入控制器,在控制器中可通过params 这个Hash 获取各输入框中的值。