- 学习 Ruby on Rails
- Rails 2.1 主页
- Rails 2.1 简介
- Rails 2.1 安装
- Rails 2.1 框架
- Rails 2.1 目录结构
- Rails 2.1 示例
- Rails 2.1 数据库设置
- Rails 2.1 活动记录
- Rails 2.1 迁移
- Rails 2.1 控制器
- Rails 2.1 视图
- Rails 2.1 布局
- Rails 2.1 脚手架
- Rails 2.1 及 AJAX
- Rails 2.1 上传文件
- Rails 2.1 发送电子邮件
- 高级 Ruby on Rails 2.1
- Rails 2.1 RMagick 指南
- Rails 2.1 基本 HTTP 认证
- Rails 2.1 错误处理
- Rails 2.1 路由系统
- Rails 2.1 单元测试
- 高级 Ruby on Rails 2.1
- Rails 2.1 提示与技巧
- 快速参考指南
- 快速参考指南
- Ruby on Rails 2.1 有用资源
- Ruby on Rails 2.1 - 资源
- Ruby on Rails 2.1 - 讨论
Ruby on Rails 2.1 - 渲染
通常使用与控制器方法同名的视图模板来呈现结果。
动作
# The default. Does not need to be specified # in a controller method called "some_action" render :action => 'some_action' render :action => 'another_action', :layout => false render :action => 'some_action', :layout => 'another_layout'
局部
局部存储在名为 "_subformname"(_error、_subform、_listitem)的文件中。
render :partial => 'subform'
render :partial => 'error', :status => 500
render :partial => 'subform', :locals =>
{ :variable => @other_variable }
render :partial => 'listitem', :collection => @list
render :partial => 'listitem', :collection => @list,
:spacer_template => 'list_divider'
模板
它更像是呈现一个动作,但它根据模板根(app/views)查找模板。
# renders app/views/weblog/show render :template => 'weblog/show'
文件
render :file => '/path/to/some/file.rhtml'
render :file => '/path/to/some/filenotfound.rhtml',
status => 404, :layout => true
文本
render :text => "Hello World" render :text => "This is an error", :status => 500 render :text => "Let's use a layout", :layout => true render :text => 'Specific layout', :layout => 'special'
内连模板
使用 ERB 来渲染“微型”模板。
render :inline => "<%= 'hello , ' * 3 + 'again' %>"
render :inline => "<%= 'hello ' + name %>",
:locals => { :name => "david" }
无
render :nothing render :nothing, :status => 403 # forbidden
RJS
def refresh
render :update do |page|
page.replace_html 'user_list', :partial => 'user',
:collection => @users
page.visual_effect :highlight, 'user_list'
end
end
更改内容类型
render :action => "atom.rxml", :content_type => "application/atom+xml"
rails-quick-guide.htm
广告