📅  最后修改于: 2023-12-03 15:13:15.303000             🧑  作者: Mango
ActionView是Rails框架中的视图层,为Web应用程序提供了丰富的模板系统和视图助手。它是Rails MVC框架中的“V”(即视图)。
template
: 视图模板的名称或路径。locals
: 传递到视图中的局部变量,对应于视图模板中的变量。formats
: 视图的格式,例如: :html
, :json
, :xml
, :js
等。layout
: 视图的布局模板。partial
: 渲染局部模板。collection
: 渲染集合模板。spacer_template
: 渲染集合模板的间隔模板。form_for
: 表单助手,生成表单元素。link_to
: 链接助手,生成链接标记。image_tag
: 图像助手,生成图片标记。content_tag
: 内容助手,生成HTML标记。asset_path
: 资源路径助手,输出资源URL。javascript_include_tag
: JavaScript标记助手,生成标记引用JavaScript文件。stylesheet_link_tag
: 样式表标记助手,生成标记引用样式表文件。<%= form_for(@user) do |f| %>
<%= f.label :name, "Name" %>
<%= f.text_field :name %>
<%= f.label :email, "Email" %>
<%= f.email_field :email %>
<%= f.submit "Save" %>
<% end %>
以上是一个简单的表单生成示例,使用了内置的表单助手 form_for
和表单元素助手。其中 @user
是一个实例变量,用于构造表单的属性和值。我们可以使用局部变量来代替实例变量,例如:
<%= form_for(:user, url: users_path) do |f| %>
<%= f.label :name, "Name" %>
<%= f.text_field :name %>
<%= f.label :email, "Email" %>
<%= f.email_field :email %>
<%= f.submit "Save" %>
<% end %>
其中,:user
是一个符号,表示表单所对应的模型或控制器。 url
是表单的提交地址。
## ActionView参数介绍
ActionView是Rails框架中的视图层,为Web应用程序提供了丰富的模板系统和视图助手。它是Rails MVC框架中的“V”(即视图)。
### 常用参数
- `template`: 视图模板的名称或路径。
- `locals`: 传递到视图中的局部变量,对应于视图模板中的变量。
- `formats`: 视图的格式,例如: `:html`, `:json`, `:xml`, `:js` 等。
- `layout`: 视图的布局模板。
- `partial`: 渲染局部模板。
- `collection`: 渲染集合模板。
- `spacer_template`: 渲染集合模板的间隔模板。
### 丰富的内置助手
- `form_for`: 表单助手,生成表单元素。
- `link_to`: 链接助手,生成链接标记。
- `image_tag`: 图像助手,生成图片标记。
- `content_tag`: 内容助手,生成HTML标记。
- `asset_path`: 资源路径助手,输出资源URL。
- `javascript_include_tag`: JavaScript标记助手,生成标记引用JavaScript文件。
- `stylesheet_link_tag`: 样式表标记助手,生成标记引用样式表文件。
### 示例代码
```erb
<%= form_for(@user) do |f| %>
<%= f.label :name, "Name" %>
<%= f.text_field :name %>
<%= f.label :email, "Email" %>
<%= f.email_field :email %>
<%= f.submit "Save" %>
<% end %>
以上是一个简单的表单生成示例,使用了内置的表单助手 form_for
和表单元素助手。其中 @user
是一个实例变量,用于构造表单的属性和值。我们可以使用局部变量来代替实例变量,例如:
<%= form_for(:user, url: users_path) do |f| %>
<%= f.label :name, "Name" %>
<%= f.text_field :name %>
<%= f.label :email, "Email" %>
<%= f.email_field :email %>
<%= f.submit "Save" %>
<% end %>
其中,:user
是一个符号,表示表单所对应的模型或控制器。 url
是表单的提交地址。